タグ

bashに関するtakaesuのブックマーク (7)

  • bashのプロセス置換(Process Substitution)で中間ファイルを不要に - grep Tips *

    はじめに bashのプロセス置換は、引数でファイルを指定すべきところをコマンドの結果で代用できる機能。コマンドの結果をファイルとして扱え、作業用の中間ファイルを作る必要がなくなる。 記述方法 内容 <(コマンドリスト) プロセス置換の利用例としてよく挙げられるものに、ファイルの比較を行うdiffの引数にファイルの代わりにコマンドを渡すがある。 diff <(command_list) <(command_list) filenameで始まる名前のファイルが大量にあるとして、原則、ファイルには特定の文字列「something」が入っているとする。somethingが入っていないファイルを探したい。 $ diff <(grep something filename* -l | xargs ls -t) <(ls -t filename*) 0a1,3 > filename9 > filenam

    bashのプロセス置換(Process Substitution)で中間ファイルを不要に - grep Tips *
    takaesu
    takaesu 2017/04/24
    プロセス置換参考になる
  • シェルスクリプトのデバッグ | UNIX & Linux コマンド・シェルスクリプト リファレンス

    シェルスクリプトのデバッグ シェルスクリプトをデバッグするには プログラムにバグはつきものであり、それはシェルスクリプトも例外ではない。bash にはシェルスクリプトのデバッグに非常に有効なオプションが用意されているので、「Syntax Error」で実行できない場合や、変数にどんな値が設定されているのか確認したい場合は、それらオプションを指定した上で実行することで、簡単にデバッグを行うことができる。 「-x」オプションを使用する -x オプションは、シェルスクリプト内で実際に実行されたコマンドを表示するオプションである。変数が使用されている場合は、その変数の値が展開された状態で表示される。 → bash に -x オプションを指定し、引数にデバッグするシェルスクリプトを指定する。 -x オプションでシェルスクリプトを実行すると、echo コマンドなどの出力に加えて、スクリプト内で実際に実

    シェルスクリプトのデバッグ | UNIX & Linux コマンド・シェルスクリプト リファレンス
    takaesu
    takaesu 2017/03/29
    シェルで-x -v オプションの違い
  • bashで標準出力と標準エラー出力の一括リダイレクト - Qiita

    詳細はman bashで。 Redirecting Standard Output and Standard Error 標準出力と標準エラー出力を一括してリダイレクト。これは相当前からある機能。

    bashで標準出力と標準エラー出力の一括リダイレクト - Qiita
  • シェルスクリプトを書くときに気をつける9箇条 - Qiita

    最新の類似投稿としてシェルスクリプトのコーディングルール2014も併せてどうぞ。 2014/10/09追記 ぼくがシェルスクリプトを書くときに気にしていること、過去の失敗で書き留めたことを忘れないために。 1. グローバル変数は大文字 PATH や HOME など、環境変数が大文字なので、エクスポートする変数を大文字で書くという習慣は一般的であるような気がしますが、エクスポートする変数を抱えるシェルスクリプトを作成する機会が稀なので。 グローバル変数は大文字 ローカル変数は小文字 エクスポートする変数も大文字 関数内からグローバル変数にアクセスする場合がありますが、やはり区別していると、可読性が増すような気がするのでお勧めです。 2. awk を知る Unix 上にて文書処理をするときに、数多くのフィルタコマンド(grep、cut、tr、head、sort、uniq、sed、awk、wc、

    シェルスクリプトを書くときに気をつける9箇条 - Qiita
  • Bashの擬似シグナルを使ったデバッグ方法 - harry’s memorandum

    少し前にオライリーの入門Bashを読んで、このデバッグ方法を知って「おおー」と感動をしたので、この喜びを書いてみました。 sh系には trap というコマンドでシグナルトラップができて便利ですが、bash にはさらに便利な疑似シグナルというものがあったりします。bashのmanpagerをみると、trapのsigspecをERRとした場合、コマンドが0以外でexitした場合にトラップしてくれるようです。 If a sigspec is ERR, the command arg is executed whenever a simple command has a non-zero exit status, subject to the following conditions. The ERR trap is not executed if the failed command is pa

    Bashの擬似シグナルを使ったデバッグ方法 - harry’s memorandum
  • bash の脆弱性 "Shell Shock" のめっちゃ細かい話 (CVE-2014-6271) - もろず blog

    ※(2014/10/1 追記) 脆弱性の番号を誤って CVE-2014-6721 と表記してしまっていました 正しくは "CVE-2014-6271" です 失礼致しました ※(2014/10/7 追記) 2014/10/7 14:00時点で Shell Shock への修正パッチは6個 公開されています 既に対応済みのシステムでもパッチの漏れがないか注意してください シェルに脆弱性が見つかったらしいです このコマンドを実行すると脆弱性があるバージョンかのチェックができるようです $ env x='() { :;}; echo vulnerable' bash -c "echo this is a test" 以下のように表示されたらアウトです vulnerable this is a test どうやら、このコマンドが正常に実行できるというのがこの脆弱性の正体らしく、 echo vuln

    bash の脆弱性 "Shell Shock" のめっちゃ細かい話 (CVE-2014-6271) - もろず blog
  • 今更ながら抑えておきたいシェルスクリプト用チートシート - Qiita

    シェルスクリプト書くときになかなか覚えていなくて、かつググラビリティが低い情報をまとめてみました。 6/19 コメントを元に一部修正しました hnakamurさんありがとうございます! 参考になる文献 test bash manual zsh manual 特殊な変数 変数 説明

    今更ながら抑えておきたいシェルスクリプト用チートシート - Qiita
  • 1