CTC 教育サービス
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes
今回も前回と同じく、bashの組み込みコマンドについて説明します。
exportコマンドは、指定したシェル変数name
を環境変数とします。word
を指定しない場合、変数name
に設定した値が環境変数の値となります。word
を指定することで、name
の値を設定することが出来ます。exportは下記のオプションを使用できますが、下記以外のオプションを指定すると0以外を返します。
name
として、シェル変数ではなくシェル関数を指定できます。name
が関数でない場合は、0以外を返します。name
を境変数から、ただのシェル変数に変更します。# 何も指定しない変数をexportした場合
$ export AAA
$ export -p | grep AAA
declare -x AAA
# 変数AAAに値を入れると、環境変数AAAに値が入る
$ AAA=100
$ export -p | grep AAA
declare -x AAA="100"
# 値が入った変数をexportした場合
$ BBB=abc
$ export BBB
$ export -p | grep BBB
declare -x BBB="abc"
# export時に値を設定する
$ export CCC=ccccc
$ export -p | grep CCC
declare -x CCC="ccccc"
# AAAを環境変数から変数に変更
$ export -n AAA
$ export -p | grep AAA
$ echo $AAA
fc (fix command)は、指定した履歴をエディタで編集し、実行するコマンドです。
fc 1000 1010
のように first
とlast
を数値で指定すると、履歴番号 1000から1010 の値がエディタ上で表示されます。この履歴を編集、保存、完了すると、保存した結果を実行します。
1 man bash
2 ls -l /usr/bin/editor
3 update-alternatives --list
4 update-alternatives --list editor
5 update-alternatives --set
6 sudo update-alternatives --set editor
7 sudo update-alternatives --set editor /usr/bin/vim.basic
8 hist
9 history
10 sudo apt install language-pack-ja manpages-ja manpages-ja-dev
11 sudo apt autoclean
first
とlast
には負数を指定でき、この場合は現在の履歴番号からのオフセットとして使用されます。last
を指定しない場合は、first
の履歴が1つだけ指定できます。指定した範囲が有効でない場合、fc は0以外を返します。
-e オプションで、エディタを指定できます。このオプションを指定しない場合は、変数 FCEDITの、変数EDITOR の値が使用されます。どちらの変数も指定されていない場合は、vi が使用されます。
-l オプションを使用すると、指定した履歴が番号付きで表示されます。
$ fc -l 1000 1010
1000 man bash
1001 ls -l /usr/bin/editor
1002 update-alternatives --list
1003 update-alternatives --list editor
1004 update-alternatives --set
1005 sudo update-alternatives --set editor
1006 sudo update-alternatives --set editor /usr/bin/vim.basic
1007 hist
1008 history
1009 sudo apt install language-pack-ja manpages-ja manpages-ja-dev
1010 sudo apt autoclean
-n オプションを-l オプションと一緒に使用すると、履歴番号が表示されません。
-r オプションを使用すると、履歴が逆順にエディタで表示されます。-l オプションをつけた場合も同様に逆順に表示されます。
-s オプションは、文字列 pat
をすべてret
に置き換えて、最も直前に実行された command
を実行します。command
を指定しない場合、直前の履歴を実行します。
$ echo $AAA
100
# 直前のコマンドを実行
$ fc -s
echo $AAA
100
# 直前のexportで始まるコマンドを実行
$ fc -s export
export -p | grep AAA
# 直前のexportで始まるコマンドの、AAAをBBBに変更して実行
$ fc -s AAA=BBB export
export -p | grep BBB
declare -x BBB="abc"
hash を実行すると、 $PATH に含まれるディレクトリを検索しコマンド name
のフルパス名を調べ、 その結果を記憶します。 そして、それまでに記憶されていたパス名は捨てられます。 name
が見つからない場合と不正なオプションが与えられた場合を除き、 hash は 0 を返します。name
が指定されない場合、hashは記憶したコマンドの実行回数と、フルパス名を表示します。
filename
をそのコマンドの完全なファイル名として使います。name
について記憶しているパス名を忘れます。name
に対応する完全なファイル名が表示されます。-t に複数の name
引数が指定された場合、 記憶されている完全なファイル名の前に name
が表示されます。組み込みコマンドのヘルプ情報を表示します。 pattern
が指定された場合には、 help は pattern
にマッチする全てのコマンドに関する詳しいヘルプを出力します。 指定されなかった場合には、 全ての組み込みコマンドと制御構造についての説明が出力されます。
pattern
それぞれの短い説明を表示します。pattern
それぞれの説明を man page 風のフォーマットで表示します。pattern
それぞれの短い書式のみを表示します。pattern
にマッチするコマンドが全くない場合を除き、helpは0を返します。
今回は、bashの組み込みコマンドについて説明しました。次回も、bashの組み込みコマンドについて説明を続けます。次回をお楽しみに。
[IT研修]注目キーワード Python UiPath(RPA) 最新技術動向 Microsoft Azure Docker Kubernetes