記事情報殿堂入り

割りと便利だけど微妙に忘れがちなbashのコマンド・チートシート

割りと便利だけど微妙に忘れがちなbashのコマンド・チートシート

自分用にメモしておくコマンド実行CMD1; CMD2, CMD1 && CMD2;はCMD1の結果に関わらずCMD2も実行される&&はCMD1の結果が正常な場合のみCMD2が実行されるCMD1 || CMD2 - 失敗時に後続コマンドを実行するCMD || printf "%b" "MSG"でエラーメッセージを表示するエラーメッセージ表示後exit 1したい...

更新日: 2017-01-08
記事の見出し
  • 割りと便利だけど微妙に忘れがちなbashのコマンド・チートシート
  • コマンド実行
  • CMD1; CMD2, CMD1 && CMD2
  • CMD1 || CMD2 - 失敗時に後続コマンドを実行する
  • CMD & - バックグラウンド実行
  • $(CMD) - サブシェルでコマンド実行、実行結果は$()に置換される
  • nohup CMD & - 実行中のバックグラウンドジョブの継続
  • $? - コマンドの戻り値
  • type, which, locate, aproposコマンドやマニュアルを探す
  • file, stat - ファイルの情報を表示
  • ドキュメンテーション
  • : DOCUMENT - 組み込みドキュメント
  • ハイフンのtips
  • CMD - ... ハイフンで標準入(出)力を受け取る/出力する
  • CMD -- ... ハイフン2つ = それ以降をコマンドラインオプションとは解釈しなくなる
  • 変数
  • シェルで「変数がセットされていない」とはどういうケースか?
  • $*と$@の空白を含んだ引数の取り扱いの違い
  • ${:-} - 変数未指定時にデフォルト値を使う
  • ${:+} - 変数指定時にデフォルト値を使う
  • ${VAR:=} - 変数未指定時にデフォルト値を設定
  • ${VAR=} - 変数未指定時にデフォルト値を設定, :無し
  • ${VAR:?"MSG"} - 変数がセットされていない場合、メッセージを出力してexitする
  • 変換
  • VAR=(VAL1 VAL2 VALn) - 配列
  • VAR[0] - 配列の最初の要素
  • VAR[@] - 配列の全要素
  • VAR[#] - 配列の要素数
  • 配列
  • setコマンド
  • set -e
  • set -o 何かOPTION
  • 条件分岐 if,
  • if [ 条件 ]
  • if (( 算術比較式 ))
  • [ 条件 ] と [[ 条件 ]]
  • [[ 条件 ]] && { CMD1; CMDn; } || { CMDe1; CMDen; } 三項演算子
  • ファイルのテスト
  • -a and, -o or
  • 文字列比較
  • if [ "$VAR" ], if [ -z "$VAR" ] - 空判定
  • 一致比較, -eqと=(の注意点)
  • if [[ $VAR == パターンマッチ ]], if [[ $VAR =~ 正規表現条件 ]]
  • 多岐分岐 case,
  • ループ
  • for 条件文
  • for f in /path/to/*
  • for (( i=0 ; i < 10 ; i++ )) - カウンタループ
  • while 条件
  • select - 選択メニュー
  • select v in ${ARR} do ... done
  • 出力, リダイレクト
  • echo
  • printf
  • 書式
  • CMD >& cmd.outとかCMD &> cmd.out - STDOUTとSTDERRを同じ出力先に出す
  • { CMD1; CMD2; CMDn; } > hoge.out, (CMD1; CMD2; CMDn) > hoge.out - 複数センテンス
  • ヒアドキュメント
  • <<EOF ... EOF
  • <<-EOF ...
  • プロセス置換
  • ファイルディスクリプタ
  • 入力
  • read -p "MSG " VAR - メッセージ付き入力プロンプト
  • read -s -p "MSG " PASSWD - パスワード用入力プロンプト
  • 計算
  • expr 式, $(( 式 )), let 式 - 計算
  • (( 算術評価式 ))
  • awk "BEGIN {print \"The answer is: \" $* }";
  • PATH と hashコマンド
テックブログ情報
割りと便利だけど微妙に忘れがちなbashのコマンド・チートシート
ブログfreee - Qiita
ブログ概要スモールビジネスのバックオフィス業務をテクノロジーで自動化し、日本のスモールビジネスを元気にする
QiitaQiita::freee
会社名freee
会社概要