エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント3件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
"set -e"に関するメモ - Shohei Yoshida's Diary
シェルスクリプトで #!/bin/sh set -e とすると、コマンド実行時に戻り値が 0以外になれば即座に終了 す... シェルスクリプトで #!/bin/sh set -e とすると、コマンド実行時に戻り値が 0以外になれば即座に終了 するという便利な機能があります。しかし diffコマンドのように 戻り値 0は差分なし、1は差分あり、それ以外はエラーみたいな 感じで戻り値を利用されると、diffの部分で処理が終了してしまう という問題があります。 #!/bin/sh set -e diff test/old.txt test/new.txt > test.patch echo "finish" のような場合, diff自体は成功しますが、それ以降が実行されず "finish"と表示されないということが起きます。 解決方法 コマンドを ifや whileの条件として書くことで、この問題を回避できます。 #!/bin/sh set -e if diff test/old.txt test/new.txt >
2015/02/22 リンク