Linux

シェルスクリプト内でコマンドを実行するときはシングルクオートではなくバッククオート

kawa.xxx

シェルスクリプト内でコマンドを実行させたいことってありますよね。

例えばファイル一覧を取得してそのファイルに処理をさせたい!という時

#!/bin/sh
for f in 'ls ./'
do
 何かしらの処理
done

と書いていてうごかねー動かねーと悩んでいました。

そしたらコマンドを実行させるときは’(シングルクオート)じゃなくて`(バッククオート)で囲わなきゃいけないのでした。

ぱっと見同じように見えるので、はまりますよね。。。

バッククオートはshift + @キーで入力できます。

#!/bin/sh
for f in `ls ./`
do
 何かしらの処理
done

このように書きなおしたら思ったような動作をしてくれました。

参考文献

ABOUT ME
kawa.xxx
kawa.xxx
都内のIT系企業に勤める会社員。自分の備忘録的なアウトプット用の場所で、ボルダリングやガシェッド、セキュリティの話題が中心です。
記事URLをコピーしました