shellでファイルが出力されるまで待ってから次のコマンドを実行するサンプルです。
以下はnuxt/nuxt.sockファイルができるまで待ち、その後パーミッションを変更します。
#!/bin/sh
FILE="nuxt/nuxt.sock"
while [ ! -e $FILE ]
do
sleep 1
done
chmod 666 $FILE
繰り返し
一般的な書式
while [ 条件式 ]
do
繰り返したい処理
done
sleepコマンド
一定期間待ちたい場合に使います。
sleep 秒数
sleep [オプション]
オプションには以下の指定ができます。
s:秒
m:分
h:時間
d:日
ファイルの存在チェック
「-e」を使うことでファイルの存在チェックが可能。以下の場合はファイルが存在する限り処理を繰り返す。
while [ -e $FILE ]
do
sleep 1
done
「! -e」とするとファイルが存在しない限り繰り返しとなります。
ディレクトリの存在チェック
「-d」を使用します。