シェルスクリプトでファイルの有無に応じて処理を分けるシンプルな方法
ファイルが無いときXXする
code:bash
test -f hoge.txt || curl example.com > hoge.txt
test -f hoge.txt はファイルがあれば成功する。なければ失敗
|| は OR 条件なので、前半が失敗時のみ評価される
結果 hoge.txt が無いときだけ curl が実行される
ファイルがあるときだけXXする
code:bash
test -f hoge.txt && cat hoge.txt
test -f hoge.txt の部分は同じ
&& は AND 条件なので、前半が失敗すると後半は実行されない。
結果ファイルが有るときだけ実行できる
シェルスクリプトの if なんて使わなくてよかったんだ…