のマニュアルページ-w
からのオプションの説明は次のとおりです。test
-w FILE
FILE exists and write permission is granted
そして例として、千の言葉よりも優れています:
$ ls -ld /home/maxime/.gvfs
dr-x------ 2 maxime maxime 0 Aug 5 22:53 /home/maxime/.gvfs
$ [ -w /home/maxime/.gvfs ] && echo "is writable"
is writable
$ touch /home/maxime/.gvfs/file
touch: cannot touch `/home/maxime/.gvfs/file': No such file or directory
ご覧のとおり、ディレクトリは書き込み可能であってはなりません。フラグのみr
がx
設定されています。でも、test
書き込めるって言ってるし… まず変なこと。もう1つは、その中にファイルを作成しようとするとどうなるかです: No such file or directory
.
ちなみに、上記のコマンドはユーザー「maxime」として実行しており、Ubuntu 12.04 のダッシュを使用しています。
さて、私はここで少し迷っています。誰か説明がありますか?