SEワンタンの独学備忘録

IT関連の独学した内容や資格試験に対する取り組みの備忘録

Linuxの [: 引数が多すぎます

Linuxの勉強中に.htmファイルと.filesディレクトリについて扱った。

.htmがカレントディレクトリに存在するかの判定は以下で想定通り

 

if [ -f *.htm ]; then

 

.filesディレクトリの判定で以下がエラーとなった。

 

if [ -d .*files]; then

 

22 行: [: 引数が多すぎます

 

原理は理解できていないがbashでは判定は[[]]を使用することが推奨されるらしい

以下に書き直す

 

if -d .*files; then

 

エラーはでなくなったが望む判定ができていない様子

結局以下のようにした

 

if $(ls *.files 2>> $log) ; then

 

lsコマンドエラーになった場合にログに出力し処理も行わないと

難しい。。。圧倒的勉強不足。。。

 

あとは書き方も勉強したほうがいい