LPIC-1 / シェルとスクリプト ・ コマンド問題
$
- [ -d /etc/passwd ]
- [ -f /etc/passwd ]✓ 正解
- [ -x /etc/passwd ]
- [ -z /etc/passwd ]
💡 -f は対象が存在し、かつ通常ファイルであれば真になります。-d はディレクトリ、-x は実行可能、-z は文字列が空かどうかの判定で、いずれも通常ファイルの存在判定ではありません。
✕ [ -d /etc/passwd ]:-d は対象がディレクトリかどうかの判定で、通常ファイルの判定ではありません。
○ [ -f /etc/passwd ]:正解。-f は対象が存在し通常ファイルであるときに真となります。
✕ [ -x /etc/passwd ]:-x は実行権限があるかどうかの判定で、通常ファイルかどうかの判定ではありません。
✕ [ -z /etc/passwd ]:-z は文字列の長さが0かを判定する演算子で、ファイルの存在判定には使えません。