タグ

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

タグの絞り込みを解除

ShellScriptとBashに関するrAdioのブックマーク (4)

  • Bashの便利な構文だがよく忘れてしまうものの備忘録

    Bashでスクリプトを書く場合のポイントをまとめた Bashなどで書くシェルスクリプトは文法がシンプルで覚えると便利。他のプログラム言語だと何行もかかなければならないファイル操作や中身のデータ処理を、ちょちょいと数行レベルで書けとても強力だ。コマンドとの親和性が高い恩恵だろう1。 旧来バッチ処理で領を発揮するシェルスクリプトだったが、昨今はDockerDockerfileや起動スクリプトなど)で活用される機会も多いだろう。 しかしながら他のプログラム言語ではみられない記法があったり、逆に似た書き方もあったりと、混乱しがちなのもシェルスクリプトの特徴かもしれない。 いちいちGoogle先生に確認するのもめんどうなので、このページに整理した2。 主な参照先(よくお世話になっているページ): UNIXの部屋(68user's page) - http://x68000.q-e-d.net/~

    Bashの便利な構文だがよく忘れてしまうものの備忘録
    rAdio
    rAdio 2021/04/30
    本当にPOSIX標準でポータビリティ万全のものと、bash固有のものが判断できずにいつも困る。しかもそれである程度は運用できてしまって、時間が経ってから何かの契機で問題にぶち当たったりするから余計に困る。
  • bashスクリプティング研修の資料を公開します - エムスリーテックブログ

    こんにちは、エンジニアリングGの中村です。 以前にこのブログにてエムスリーでの社内研修について紹介しました。今回は、この中でのbashスクリプティング講座の資料を公開します。 www.m3tech.blog 弊社の中でもいろいろな用途でbashが使われていますが、bashは簡単に利用できるもののプログラミング言語としてはバグを生みやすい、辛い言語だと思います。 ここで紹介しているのはいわゆるコーディング規則というよりも、バグ防止と可読性向上のためのルールをTips集的にまとめたものです。 bashにおいてまだまだ注意するところはありそうですが、多少なりともわかりにくいスクリプトの削減になればと期待しています。 [追記: 2018-08-22] はてブにて以下のコメントをいただきました。 bashスクリプティング研修の資料を公開します - エムスリーテックブログ bashで50行以上になった

    bashスクリプティング研修の資料を公開します - エムスリーテックブログ
    rAdio
    rAdio 2018/08/22
    「Bashism」かな…? Shebang関連で軽く触れられてるけど、シェルスクリプトはインフラ運用実態に大きく依存するので、「言語」としての知見も必要だけど、実運用の泥臭い実情も加味して実装方針を導出する方が良さげ。
  • Linuxコマンド(Bash)でバックグラウンド実行する方法のまとめメモ - Qiita

    bashコマンドのバックグランド実行方法について、まとまっている記事が見つからなかったのでまとめメモ 通常のバックグラウンド実行 &でバックグランド実行 参考:http://kazmax.zpp.jp/linux_beginner/process_background.html もっとも基的なバックグランド実行、コマンドの後ろに&をつけて実行する。 ターミナルの切断が切れたりしてログアウトした場合に、 この方法で実行したプロセスはkillされてしまうので注意する。 途切れたら困る処理の場合はtmuxのセッション上で実行、 もしくは後述するnohupコマンドでのバックグラウンド実行推奨。 # バックグラウンド実行 $ sleep 5 & [1] 21871 # プロセス確認 $ ps $! # ps 21871 PID TTY STAT TIME COMMAND 21871 pts/0 S

    Linuxコマンド(Bash)でバックグラウンド実行する方法のまとめメモ - Qiita
  • 割りと便利だけど微妙に忘れがちなbashのコマンド・チートシート - Qiita

    自分用にメモしておく コマンド実行 CMD1; CMD2, CMD1 && CMD2 ;はCMD1の結果に関わらずCMD2も実行される &&はCMD1の結果が正常な場合のみCMD2が実行される CMD1 || CMD2 - 失敗時に後続コマンドを実行する CMD || printf "%b" "MSG"でエラーメッセージを表示する エラーメッセージ表示後exit 1したい場合 = CMD || { printf "%b" "FAILED.\n" ; exit 1 } CMD || printf "%b" "FAILED.\n" ; exit 1と波括弧無しで書くと期待通り動作しない(CMDが成功時もexit 1してしまう) CMD & - バックグラウンド実行 CMD &で[1] 4592のようにジョブ番号とプロセスIDが表示される killしたければkill %ジョブ番号 か kill

    割りと便利だけど微妙に忘れがちなbashのコマンド・チートシート - Qiita
    rAdio
    rAdio 2017/01/12
    POSIX原理主義とまではいかないけど、あまりにbash独自に過ぎるものについては、既存スクリプト読解のための知識としてしか利用してないなぁ…。ただ、そういう「こだわり」を云々される機会が皆無なのは寂しくもある。
  • 1