[ (UNIXコマンド)
読み:???
外語:[
様々な条件に対して真偽を返すUNIXコマンド。間違えて削除するとシェルスクリプトが動かなくなるので注意。
概要
FreeBSDなどに存在する。FreeBSDの場合、通常は /bin/test にハードリンクされている。
System VであるUnixWare 2には存在が確認できない。
Linuxにも同等のものがあるが、パスが異なり /usr/bin/[ となっているほか、/usr/bin/test のハードリンクではなく別のプログラムとなっているようである。
ちなみに、Cygwinには[.exeがあるらしい。
特徴
testコマンドは[という名前で呼び出されると、引数の最後に]が与えられることを期待する。
これによってシェルスクリプト(Bourne Shellスクリプト)中の
if test ! -w /etc/motd; then
echo '/etc/motdへの書き込み権限がありません。' 1>&2
exit 1
fi
のような条件文を、
if [ ! -w /etc/motd ]; then
# 以下同
と、いくぶん読み易く書ける。
再検索