<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>シェルスクリプト $ 意味 &#8211; スグブログ</title>
	<atom:link href="https://sugublog.org/tag/%E3%82%B7%E3%82%A7%E3%83%AB%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88-%E6%84%8F%E5%91%B3/feed/" rel="self" type="application/rss+xml" />
	<link>https://sugublog.org</link>
	<description>ブログ運営について発信中</description>
	<lastBuildDate>Fri, 10 Nov 2023 21:22:41 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://sugublog.org/wp-content/uploads/2021/07/icon_20210703-min-150x150.png</url>
	<title>シェルスクリプト $ 意味 &#8211; スグブログ</title>
	<link>https://sugublog.org</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【シェルスクリプト】「$」の意味を詳しく解説！実例あり</title>
		<link>https://sugublog.org/shell-script-dollar-mean/</link>
					<comments>https://sugublog.org/shell-script-dollar-mean/?noamp=mobile#respond</comments>
		
		<dc:creator><![CDATA[suguru]]></dc:creator>
		<pubDate>Wed, 12 Apr 2023 07:49:09 +0000</pubDate>
				<category><![CDATA[シェルスクリプト]]></category>
		<category><![CDATA[シェルスクリプト $ 意味]]></category>
		<guid isPermaLink="false">https://sugublog.org/?p=5499</guid>

					<description><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-3-1024x791.jpg" class="webfeedsFeaturedVisual" /></p>シェルスクリプトで「$」はよく出てきますが、どういう意味なのかわからないと言った事はないでしょうか？ そういった疑問に答えます。 今回はシェルスクリプトでの「＄」の意味をまとめていきます。 またそれぞれの使い方の実例も交 [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-3-1024x791.jpg" class="webfeedsFeaturedVisual" /></p>
<p>シェルスクリプトで「$」はよく出てきますが、どういう意味なのかわからないと言った事はないでしょうか？</p>


<div class="swell-block-balloon"><div class="c-balloon -bln-left" data-col="blue"><div class="c-balloon__icon -square"><img decoding="async" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png" alt="" class="lazyload c-balloon__iconImg" width="80px" height="80px"><noscript><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/02/cropped-dog003-150x150.png" alt="" class="c-balloon__iconImg" width="80px" height="80px"></noscript><span class="c-balloon__iconName">シェルスクリプトで$の使い方がわからない人</span></div><div class="c-balloon__body -thinking -border-on"><div class="c-balloon__text">
<p>シェルスクリプトで「$」はよく出てきますが、どういう意味なのかわりません。詳しくまとめれる人いないかな？</p>
<span class="c-balloon__shapes"><span class="c-balloon__before"></span><span class="c-balloon__after"></span></span></div></div></div></div>


<p>そういった疑問に答えます。</p>



<p>今回は<strong><span class="swl-inline-color has-swl-deep-01-color"><span class="swl-marker mark_orange">シェルスクリプトでの「＄」の意味</span></span></strong>をまとめていきます。</p>



<p>またそれぞれの使い方の実例も交えて説明するので、初心者でもわかりやすくなっています。</p>


<div class="p-blogParts post_content" data-partsID="5030">
<p>windowsのプロンプトで使用できるbatやpythonやphpを使用して、業務効率化やWebサイトを作成しております。javaやシェルスクリプトなど、様々なプログラミングを行った実績ありの筆者です。</p>
</div>


<script async="" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<ins class="adsbygoogle ads" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-9330904718533231" data-ad-slot="6086594686"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<h2 class="wp-block-heading">シェルスクリプトで「$」の意味を解説</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="683" src="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-7-1024x683.jpg" alt="意味を解説" class="wp-image-4564" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-7-1024x683.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-7-300x200.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-7-768x512.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-7.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>シェルスクリプトで「$」の意味は以下です。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>シェルスクリプトで「$」がもつ意味</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>変数を展開</li>



<li>引数を展開</li>



<li>配列を展開</li>



<li>コマンド実行</li>



<li>その他の展開</li>



<li>正規表現の最後の文字</li>
</ul>
</div></div>



<p>１つずつ順番に説明します。</p>



<h2 class="wp-block-heading">変数を展開するのに「$」を使用する</h2>



<p class="has-border -border02"><strong>シェルスクリプト</strong>で<strong>「$」</strong>が一番使用されるのが、<strong>変数展開するという意味</strong>です。</p>



<h3 class="wp-block-heading">変数を文字列を展開してみる</h3>



<p>変数を設定して使用する時に使います。以下のシェルスクリプトを見て下さい。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-file="dollar-mean.sh" data-lang="Bash"><code>#!bin/bash

a=dollar-mean
echo $a</code></pre></div>



<p>「a」という変数に文字列を入れています。</p>



<p>「echo」で変数に入っている文字列を表示しています。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -internal" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">あわせて読みたい</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/08/school_08-3-300x188.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/shell-script-echo/">【シェルスクリプト基礎】echoコマンドの使い方！</a>
						<span class="p-blogCard__excerpt">シェルスクリプトのechoコマンドの使い方で疑問に思っている事などないでしょうか？ 思い通りに文字列を表示できなかったりしないでしょうか？ シェルスクリプトでecho&#8230;</span>					</div>
				</div>
			</div>
		</div>


<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-file="dollar-mean.sh" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh
dollar-mean</code></pre></div>



<p>実行すると変数「a」が展開されて「dollar-mean」という文字列が表示されています。</p>



<p class="is-style-balloon_box2">シェルスクリプトを実行する為のコマンドについては様々ありますが、以下の記事で纏めています。</p>


<div class="swell-block-postLink">			<div class="p-blogCard -external" data-type="type1" data-onclick="clickLink">
				<div class="p-blogCard__inner">
					<span class="p-blogCard__caption">スグブログ</span>
					<div class="p-blogCard__thumb c-postThumb"><figure class="c-postThumb__figure"><img decoding="async" src="https://sugublog.org/wp-content/uploads/2021/08/script_0809-2.jpg" alt="" class="c-postThumb__img u-obf-cover" width="320" height="180"></figure></div>					<div class="p-blogCard__body">
						<a class="p-blogCard__title" href="https://sugublog.org/shell-script-execution/">【シェルスクリプト基礎】コマンドを実行する様々な方法をご紹介！ | 【初心者向け】エラー対処法あり！</a>
						<span class="p-blogCard__excerpt">シェルスクリプトを実行する時に困った事はありませんか？ シェルスクリプトのコマンド実行での失敗メッセージ一覧 「実行権限がありません」 「コマンドが見つかりません&#8230;</span>					</div>
				</div>
			</div>
		</div>


<h3 class="wp-block-heading">変数の文字数を数えてみる</h3>



<p>その他にシェルスクリプトで「$」を使用して変数を扱うものに、<span class="swl-bg-color has-swl-deep-01-background-color">変数の文字列の文字数を数える</span>というものがあります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!bin/bash

a=dollar-mean
echo 変数の文字数は「dollar-mean」で${#a}文字になります</code></pre></div>



<p>変数を指定して、その文字列の数を<strong><span class="swl-inline-color has-swl-deep-01-color">「${#変数}」</span></strong>で展開できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh

変数の文字数は「dollar-mean」で11文字になります</code></pre></div>



<p>「${#変数}」の部分が「dollar-mean」の文字数の「11」に展開されています。</p>



<h2 class="wp-block-heading">引数を展開するのに「$」を使用する</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="944" src="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-1024x944.jpg" alt="展開する" class="wp-image-4804" srcset="https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-1024x944.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-300x277.jpg 300w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1-768x708.jpg 768w, https://sugublog.org/wp-content/uploads/2021/12/PC教室20211216-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>シェルスクリプトを実行する時の引数を展開する事も可能です。</p>



<h3 class="wp-block-heading">引数の文字列を展開してみる</h3>



<p>以下のシェルスクリプトを見て下さい。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-file="dollar-mean.sh" data-lang="Bash"><code>#!bin/bash

echo 1番目の引数は$1
echo 2番目の引数は$2
echo シェルスクリプトのファイル名は$0</code></pre></div>



<p><strong>「$1」</strong>は引数の1番目を展開します。<strong>「$数字」</strong>は引数の数字番目を展開します。</p>



<p><strong>「$0」</strong>ではファイル名を展開出来ます。</p>



<p>ではこのシェルスクリプトに「aaa」と「bbb」という引数を指定して実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh aaa bbb
1番目の引数はaaa
2番目の引数はbbb
シェルスクリプトのファイル名はdollar-mean.sh</code></pre></div>



<p>「$1」は引数の1番目を展開、「$2」は引数の2番目を、「$0」でシェルスクリプトのファイル名を展開できています。</p>



<h3 class="wp-block-heading">引数の数を数えてみる</h3>



<p>引数の数も数える事が可能です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!bin/bash

echo 引数の数は$#</code></pre></div>



<p><span class="swl-marker mark_orange"><strong>「$#」</strong>を指定する事により<strong>引数の数を数える</strong>事が可能です。</span></p>



<p>シェルスクリプトのファイル名の後に「aaa」「bbb」を引数として実行してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh aaa bbb

引数の数は2</code></pre></div>



<p>「$#」に引数の数の「2」が展開されています。</p>



<h3 class="wp-block-heading">引数の全てを展開してみる</h3>



<p>また引数の全てを展開する事も可能です。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!bin/bash

echo 引数の全ては$@</code></pre></div>



<p><span class="swl-marker mark_orange"><strong>「$@」</strong>と指定する事で<strong>引数の全てを展開</strong>する事が可能です。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh aaa bbb

引数の全てはaaa bbb</code></pre></div>



<p>「$@」に引数の全ての「aaa bbb」が展開されています。</p>



<h2 class="wp-block-heading">配列の展開をするのに「$」を使用する</h2>



<p>変数だけではなく配列の展開も行う事が可能です。</p>



<h3 class="wp-block-heading">配列の中身を展開する</h3>



<p><span class="swl-marker mark_orange"><strong>「${配列名[番号]}」</strong>と指定する事で、<strong>配列の左から指定した番号の中身を展開</strong>する事が可能です。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-file="dollar-mean.sh" data-lang="Bash"><code>#!bin/bash

allay=(a b c d e f)
echo 配列の3番目は${allay[2]}</code></pre></div>



<p>「allay」という配列に「a」から「f」までをいれています。</p>



<p>「${配列名[番号]}」の配列名に「allay」、番号に「2」をいれています。</p>



<p class="is-style-icon_info">配列は0からなので3番目は2になります</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh

配列の3番目はc</code></pre></div>



<p>${allay[2]}に3番目の「c」が展開されています。</p>



<h2 class="wp-block-heading">コマンドを実行してするのに「$」を使用する</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="560" src="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-1024x560.jpg" alt="コマンドの実行" class="wp-image-4561" srcset="https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-1024x560.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-300x164.jpg 300w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4-768x420.jpg 768w, https://sugublog.org/wp-content/uploads/2021/11/programing_1122-4.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p>コマンドを実行した結果を展開する事が可能です。</p>



<p><span class="swl-marker mark_orange">コマンドを実行した結果を展開するには<strong>「$(コマンド)」</strong>を使用します。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!bin/bash

echo 時刻は$(date)</code></pre></div>



<p>今回は時刻を表示する「date」コマンドを展開します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh

時刻は2023年 4月 12日 水曜日 22:45:40 JST</code></pre></div>



<p>「$(date)」が時刻に展開されています。</p>



<h2 class="wp-block-heading">その他の展開で「$」を使用する</h2>



<p>その他に展開できるものをご紹介しておきます。</p>



<h3 class="wp-block-heading">直前のステータスを「$?」で展開してみる</h3>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!/bin/bash
echo success
echo 直前のステータスは$?
aaa
echo 直前のステータスは$?</code></pre></div>



<p>１つ目は「echo」で文字を表示させます。2つ目は存在しない「aaa」というコマンドを実行しようとします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh
success
直前のステータスは0
dollar-mean.sh: 行 4: aaa: コマンドが見つかりません
直前のステータスは127</code></pre></div>



<p>1つ目は「success」と表示できましたので、<span class="swl-bg-color has-swl-deep-02-background-color">直前のステータス「$?」が「0」</span>になっています。</p>



<p>2つ目は「aaa」というコマンドがないという事で、<span class="swl-bg-color has-swl-deep-01-background-color">直前のステータス「$?」が「127」</span>になっています。</p>



<h3 class="wp-block-heading">現在のプロセスIDを「$$」で展開してみる</h3>



<p><span class="swl-marker mark_orange">現在のプロセスIDを<strong>「$$」</strong>で展開可能です。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!bin/bash

echo 現在のプロセスIDは$$</code></pre></div>



<p>シェルスクリプトを実行してみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh

現在のプロセスIDは2862</code></pre></div>



<p>プロセスIDの「$$」が「2862」に展開されています。</p>



<p class="is-style-icon_announce">プロセスIDは個人で違う値になっているはずです。その為一時ファイルの名前などに使用されます。</p>



<h2 class="wp-block-heading">正規表現で「$」を使用する</h2>



<p><span class="swl-marker mark_orange"><strong>正規表現</strong>でも<strong><span class="swl-inline-color has-swl-deep-01-color">「$」</span></strong>を使用できます。</span></p>



<p><span class="swl-bg-color has-swl-deep-01-background-color">行の最後の文字を表す文字が「$」</span>になります。</p>



<p class="is-style-icon_pen">行の初めは「^」になります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>#!bin/bash

for i in &quot;$@&quot;
 do
  if [[ $i =~ [a-z][a-z]*b$ ]]; then
   echo &quot;${i}&quot;
  fi
 done</code></pre></div>



<p>シェルスクリプトに「aaa」「bbb」を引数として実行します。</p>



<p>すべての引数の「$@」を「for」コマンドで繰り返します。</p>



<p>「if」とテストコマンドで引数が「aからzまでのどれか」の文字列で最後が「b」で終わるものがあれば表示するようにします。</p>



<p class="is-style-icon_pen">「=~」は右側に正規表現を使用する事を意味します。</p>



<p><span class="swl-marker mark_orange">最後の<strong><span class="swl-inline-color has-swl-deep-01-color">「b$」</span></strong>により<strong><span class="swl-inline-color has-swl-deep-01-color">文字列の最後が「b」</span></strong>である事を意味します。</span></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-bash" data-lang="Bash"><code>[root@localhost workspace]# bash dollar-mean.sh aaa bbb

bbb</code></pre></div>



<p>文字の最後が「b」の「bbb」のみ展開されている事を確認できました。</p>



<h2 class="wp-block-heading">シェルスクリプトで「$」の意味を解説のまとめ</h2>


<div class="wp-block-image">
<figure class="aligncenter size-large"><img decoding="async" width="1024" height="559" src="https://sugublog.org/wp-content/uploads/2021/08/programing_0812-2-1-1024x559.jpg" alt="programing" class="wp-image-3964" srcset="https://sugublog.org/wp-content/uploads/2021/08/programing_0812-2-1-1024x559.jpg 1024w, https://sugublog.org/wp-content/uploads/2021/08/programing_0812-2-1-300x164.jpg 300w, https://sugublog.org/wp-content/uploads/2021/08/programing_0812-2-1-768x419.jpg 768w, https://sugublog.org/wp-content/uploads/2021/08/programing_0812-2-1.jpg 1200w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
</div>


<p class="has-border -border02">シェルスクリプトでは「$」の意味は以下です。</p>



<div class="swell-block-capbox cap_box is-style-onborder_ttl"><div class="cap_box_ttl"><span>シェルスクリプトで「$」がもつ意味</span></div><div class="cap_box_content">
<ul class="wp-block-list">
<li>変数を展開</li>



<li>引数を展開</li>



<li>配列を展開</li>



<li>コマンド実行</li>



<li>その他の展開</li>



<li>正規表現の最後の文字</li>
</ul>
</div></div>



<p>本日実演した「$」の使い方を以下にまとめてみました。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>$の使い方</th><th>種別</th><th>意味</th></tr></thead><tbody><tr><td>$変数</td><td>変数</td><td>変数の文字列を展開</td></tr><tr><td>${#変数}</td><td>変数</td><td>変数の文字数を展開</td></tr><tr><td>$数字</td><td>引数</td><td>引数のn番目の文字列を展開</td></tr><tr><td>$0</td><td>引数</td><td>ファイル名を展開</td></tr><tr><td>$#</td><td>引数</td><td>引数の個数を展開</td></tr><tr><td>$@</td><td>引数</td><td>引数の全ての文字列を展開</td></tr><tr><td>${配列名[数字]}</td><td>配列</td><td>配列の中身の展開</td></tr><tr><td>$(コマンド)</td><td>コマンド</td><td>コマンドの結果を文字列で展開</td></tr><tr><td>$?</td><td>その他</td><td>直前のステータスを展開</td></tr><tr><td>$$</td><td>その他</td><td>現在のプロセスIDを展開</td></tr><tr><td>最後の文字$</td><td>正規表現</td><td>最後の文字の決定</td></tr></tbody></table><figcaption class="wp-element-caption">シェルスクリプトでの「$」の意味一覧</figcaption></figure>



<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9330904718533231"
     crossorigin="anonymous"></script>
<ins class="adsbygoogle"
     style="display:block"
     data-ad-format="autorelaxed"
     data-ad-client="ca-pub-9330904718533231"
     data-ad-slot="8455594968"></ins>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>



<p>シェルスクリプトで「$」はかなり使用しますので、意味をしっかり理解しておく必要があります。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sugublog.org/shell-script-dollar-mean/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
