set
パラメータのないコマンドは何をしますか?
ご覧のとおり、コマンドenv
と同様に、環境変数がアルファベット順に印刷されます。そして、いくつかの異なる情報(変数?関数?)をさらに印刷します。たとえば、次のようになります。
__git_printf_supports_v=yes
__grub_script_check_program=grub-script-check
...
quote ()
{
local quoted=${1//\'/\'\\\'\'};
printf "'%s'" "$quoted"
}
quote_readline ()
{
local quoted;
_quote_readline_by_ref "$1" ret;
printf %s "$ret"
}
それは何であり、どこから来るのですか?
set
パラメータがないと、コマンドに関する情報が見つかりません。実際、私のLinuxディストリビューションにはman
ページがまったくありません。set
ベストアンサー1
set
環境変数だけでなく、リストの最後に表示されるシェル関数まで、すべてのシェル変数を表示するシェル組み込みです。
変数は、行の実行またはインポート時に設定できる構文で表されます。
~からbash
マニュアルページ:
オプションまたは引数が指定されていない場合、setは現在のロケールに従ってソートされているすべてのシェル変数と関数の名前と値を、現在設定されている変数を設定またはリセットするための入力として再利用できる形式で表示します。
動作は他のシェルで必ずしも同じである必要はありません。たとえば、ksh
set
シェル機能は表示されません。