私はこのコードを持っています、それはステップの条件として設定されました。コードの「-d」はどういう意味ですか?
if [ -d $FTBASEDIR/$1/$2 ]; then
ftcmd="lcd $FTBASEDIR"
ftcmd2="cd $FTROOTDIR"
ftcmd3="put $1"
fi
私はこのコードを持っています、それはステップの条件として設定されました。コードの「-d」はどういう意味ですか?
if [ -d $FTBASEDIR/$1/$2 ]; then
ftcmd="lcd $FTBASEDIR"
ftcmd2="cd $FTROOTDIR"
ftcmd3="put $1"
fi
つまり、次の引数はディレクトリですか?
bash
マンページ(下)からCONDITIONAL EXPRESSIONS
:
-d file
True if file exists and is a directory.
これらのホスト全体があり、通常のファイル、文字特殊ファイル、ファイルが書き込み可能かどうかなどを検出できます。
http://www.gnu.org/software/bash/manual/bashref.html#Bash-Conditional-Expressionsから:
-d file
ファイルが存在し、ディレクトリである場合はTrue 。
[
は実際にはコマンド名であり、(ほぼ) コマンドと同等test
です。
[
との両方test
が、多くのシェルの組み込みコマンドとして、また実際の実行可能ファイルとして実装されています。通常は/usr/bin
([
は通常 へのシンボリック リンクtest
です)。(昔は、それらは単なる実行可能ファイルでした。それらをシェルに組み込むことで、テストをより高速に実行できます。)
bash またはtest
コマンドのドキュメントで-d
は、次の引数がディレクトリであるかどうかをテストすることが説明されています。
(上で「ほぼ」と書きました。違いは[
、一致する]
引数が必要ですが、そうでtest
はないことです。)