「シェルスクリプトの基礎 - 外部コマンド」の版間の差分

ナビゲーションに移動 検索に移動
(文字列「__FORCETOC__」を「{{#seo: |title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki |keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 |description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This pag…)
 
45行目: 45行目:
  fi
  fi
  </syntaxhighlight>
  </syntaxhighlight>
<br>
==== whichコマンド ====
whichコマンドの標準エラー出力を抑制して、コマンドの存在確認を行う。<br>
<syntaxhighlight lang="sh">
which <コマンド名> 2>/dev/null
</syntaxhighlight>
<br>
<syntaxhighlight lang="sh">
# 例 : gitコマンドのパスを確認
#      存在する場合のみパスを表示
which git 2>/dev/null
# 例 : 存在しないコマンドを確認
#      何も表示されない
which nonexistentcommand 2>/dev/null
</syntaxhighlight>
<br>
また、コマンドの存在確認を条件分岐に使用することもできる。<br>
<syntaxhighlight lang="sh">
# gitコマンドが存在するか確認
if which git >/dev/null 2>&1; then
    echo "gitコマンドが利用可能です"
else
    echo "gitコマンドが見つかりません"
fi
</syntaxhighlight>
<br>
以下の例で使用している<code>>/dev/null 2>&1</code>は、標準出力を破棄して、標準エラー出力を標準出力と同じ場所 (この例では、/dev/null) にリダイレクトする。<br>
これにより、whichコマンドの出力を完全に抑制しながら、コマンドの存在を確認することが可能となる。<br>
<br><br>
<br><br>


案内メニュー