3テラバイト

プログラム関連備忘録サイト。主にゲーム。

Unix

bashの特殊パラメータ一覧

投稿日:

こんにちは、今日はUNIX系OSのシェルであるbashで使用できる特殊パラメータについてまとめていきます。

特殊パラメータ一覧

パラメータ名説明
*引数の値を全てセパレーター区切りで表示します。
2重引用符で囲むと(”$*”)変数IFSに値が設定されている場合、その最初の文字がセパレーターとして使用され、nullの場合は全ての引数が連結されて表示されます。
変数IFSが設定されていない場合はスペース区切りで表示されます。
@引数の値を全て表示します。
#引数の個数を表示します。
?最後に実行したフォアグラウンドコマンドのステータス
bashのオプションで有効なフラグを表示します。
$シェルのプロセスIDを表示します。
!最後に実行したバックグラウンドコマンドのステータス
0実行中のシェル名、またはファイル名を表示します。
シェルスクリプトの場合はそのファイル名、コマンドラインで実行した場合は実行中のシェル名が表示されます。
_最後に実行したコマンドの最後の引数。

$*

そのまま使用する場合

以下のようなシェルスクリプトをtest.shというファイル名で作成

#!/bin/bash
echo $*

実行結果は以下のようになります。

$ ./test.sh 1 2
1 2

特殊変数IFSにセパレーターを設定する

以下のようなシェルスクリプトをtest.shというファイル名で作成

#!/bin/bash
IFS=/
echo "$*"

実行結果は以下のようになります。

$ ./test.sh 1 2
1/2

特殊変数IFSにnullを設定する

以下のようなシェルスクリプトをtest.shというファイル名で作成

#!/bin/bash
IFS=
echo "$*"

実行結果は以下のようになります。

$ ./test.sh 1 2
1 2

$0

コマンドラインで実行した場合

$ echo $0
-bash

シェルスクリプトで使用した場合

#!/bin/bash
echo $0

実行結果

$ ./test.sh
./test.sh

$_

#!/bin/bash
mkdir test_dir
echo $_

実行結果

$ ./test.sh
test_dir

-Unix


comment

メールアドレスが公開されることはありません。

関連記事

no image

環境変数の一覧を表示するUNIX系コマンドprintenvの使い方

こんにちは、今日はUNIX系OSで環境変数の一覧を表示することができるコマンドのprintenvの使い方についてまとめていきます。 printenvコマンドの使い方 全ての環境変数を表示する場合は引数 …

no image

ビルトインコマンドを実行するコマンドbuiltinの使い方

こんにちは、今日はエイリアスが設定されているものでもビルトインのコマンドを実行することができるコマンドbuiltinの使い方についてまとめていきます。 確認環境 bash 使い方 biltinコマンド …

no image

findコマンドで取得したファイルをmvコマンドに渡す方法

mvコマンドの-tオプションを使用する 以下の例では拡張子がlogのファイルをlogsというディレクトリに移動します。 $ find . -name "*.log" | xargs …

no image

zipファイルの中身を確認するUnix系コマンドzipinfoの使い方

こんにちは、今日はzipファイルの中身を確認するUnix系コマンド、zipinfoの使い方についてまとめていきます。 使い方 以下のように引数にzipファイルを渡すのみで、そのファイルの中身が表示され …

no image

プロセス一覧を表示し自動で更新とソートも行うUnix系コマンドtopの使い方

こんにちは、今日はプロセス一覧を表示し、自動で更新とソートも行うことができるUnix系コマンドtopの使い方についてまとめていきます。 確認環境 macOS Mojave 10.14.6 使い方 引数 …