タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

シェルスクリプトに関するzaki-hmkcのブックマーク (2)

  • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita

    はじめに シェルスクリプトで二重起動防止やロックをする方法を検索すると、いろいろな方法や書き方が見つかりますが、どれを使えばよいのか、当に正しく動くのか、不安になりますよね? ディレクトリ (mkdir) やシンボリックリンク (ln) を使った独自実装の例も見かけますが、エラー発生時や予期せぬ電源断、CTRL+C で止めたときなどでも問題は発生しないのでしょうか? まず、ディレクトリやシンボリックリンクを使った独自実装はしない。これを肝に銘じてください。シェルスクリプトでのロック管理はとても難しく、一般的な排他制御の知識に加えて、シェルスクリプト特有の問題、シグナルやトラップ、サブシェルや子プロセスの問題、さらには特定のシェル固有の仕様やバグなどさまざまな問題に対処する必要があり大変です。独自実装の例では古いロックファイルが残ってしまい、それをいつどのタイミングで片付ければ安全なのか?

    シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita
  • 覚えておきたいbashシェルスクリプトのオプション

    こんにちは。CTOの馬場です。 今回もインフラエンジニア向けにちょっとした情報を紹介します。 今回は「覚えておきたいbashシェルスクリプトのオプション」です。 便利なものを3つ紹介します。 これを覚えておけば、シェルスクリプトとの付き合いが楽になること間違いなし! その1: eオプション まず1つめはeオプションです。 使い方としては bash -e shellscript.sh のように使います。 このオプションの効果ですが、man bashによると -e オプションが与えられた場合、返り値は最後に実行されたコマンドの返り値となるか、あるいはコマンドの一時ファイルでエラーが起きた場合には偽となります。2番目の形式を用いた場合、終了ステータスは再実行されたコマンドの終了ステータスとなります。 とのこと。。。よくわかりませんね。 平たく言うと、シェルスクリプトの一連の動作の中でエラー(ex

    覚えておきたいbashシェルスクリプトのオプション
  • 1