Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

bash | 入門bash

概要

書籍 入門bashに関するメモ。
網羅はせず任意の箇所のみ抜粋する。

各章

章1. bashの基礎
No Sub 内容 詳細
01 00 シェルとは何か ユーザーのコマンドラインをOSの命令に変換するためのもの
02 00 本書の適用範囲
03 00 UNIXシェルの歴史
03 01 bash Bourne Again Shellの略。Bourneはshの開発者Steven Bourneの名前
03 02 bashの特長
04 00 bashの入手
05 00 対話形式でのシェルの使用
05 01 コマンド、引数、オプション
06 00 ファイル
06 01 ディレクトリ
06 02 ファイル名、ファイルドカード、パス名の展開
06 03 ブレース展開 http://d.hatena.ne.jp/tbpg/20130210/1360521847
07 00 入力と出力
07 01 標準入出力 UNIXプログラムは標準入力、標準出力、標準エラーからなる。
07 02 入出力のリダイレクト
07 03 パイプライン
08 00 バックグラウンドジョブ &でコマンドを終わらせることでバックグラウンドで実行されるようになる。
実行中の内容はjobsで確認可能
08 01 バックグラウンドでの入出力 バックグラウンドで行う処理はフォアグラウンドの処理と衝突すると入出力内容が混在してしまう。
バックグラウンドのジョブはリダイレクトを利用したファイルのやり取りで処理するほうが好ましい
08 02 バックグラウンドジョブと優先度 バックグラウンドで実行するジョブはその性質上メモリやCPUなどのリソースを消費しやすいです。
実行時にniceコマンドで優先度を設定することでリソースの消費を抑えることができます
09 00 特殊記号とクォーティング <,>,|,&は特殊記号である。その他にも様々な特殊記号がある
09 01 クォーティング 特殊記号をリテラルとして利用することをクォーティングという。引用符や二重引用符を利用する
09 02 バックスラッシュエスケープ 文字をバックスラッシュでエスケープすることでクォーティングすることが可能
09 03 引用符のクォーティング 引用符はバックスラッシュエスケープでクォーティング可能
09 04 コマンドラインの継続 http://d.hatena.ne.jp/tbpg/20130211/1360596935
09 05 コントロールキー
10 00 ヘルプ
章2. コマンドライン編集
No Sub 内容 詳細
01 00 コマンドライン編集を有効にするには set -o emacs,set -o viで切り替える
02 00 履歴ファイル bashのコマンド履歴はホームディレクトリの.bash_historyに保存される
03 00 emacsモード
04 00 viモード 通常のviエディタ同様に入力モードと制御モードがある。コントロールによる編集コマンド有り
04 01 制御モードの基本コマンド 略(viの基本的な移動系操作に関する説明)
04 02 テキストの入力と変更 略(viの基本的な入力系操作に関する説明)
04 03 削除コマンド 略(viの基本的な削除系操作に関する説明)
04 04 履歴ファイル内での移動 http://d.hatena.ne.jp/tbpg/20130213/1360761218
04 05 文字検索コマンド http://d.hatena.ne.jp/tbpg/20130213/1360761731
04 06 テキスト補完 http://d.hatena.ne.jp/tbpg/20130213/1360763951
04 07 その他のコマンド
05 00 fcコマンド
06 00 履歴の展開 http://d.hatena.ne.jp/tbpg/20130213/1360765682
07 00 readline bashコマンドライン編集インターフェイスreadline
readlineの設定変更によりキーバインドの変更等が可能
07 01 readlineの起動ファイル ホームディレクトリの.inputrcが起動ファイル。
07 02 bindを使ったキーバインド
08 00 キー入力の習慣
章3. 環境のカスタマイズ
No Sub 内容 詳細
03 01 特殊ファイル(.bash_profile,.bash_logout,.bashrc) http://d.hatena.ne.jp/tbpg/20131015/1381854684
03 02 エイリアス alias alias_name='command'でコマンドに別名を設定出来る
03 03 オプション
03 04 変数 http://d.hatena.ne.jp/tbpg/20131016/1381925300
03 04 プロンプト変数 http://d.hatena.ne.jp/tbpg/20131016/1381925306
03 04 コマンド検索変数 http://d.hatena.ne.jp/tbpg/20131016/1381925312
03 05 カスタマイズとサブプロセス
章4. 基本的なシェルプログラミング
04 01 関数 http://d.hatena.ne.jp/tbpg/20131018/1382105437
04 01 定義済み関数の確認 http://d.hatena.ne.jp/tbpg/20131018/1382105589
04 02 位置パラメータ http://d.hatena.ne.jp/tbpg/20131018/1382105663
章5. フロー制御
章6. コマンドラインオプションと型を持つ変数
章7. 入出力とコマンドラインの処理
章8. プロセスの操作
章9. シェルプログラムのデバッグ
章10. bashの管理
章11. シェルスクリプティング
章12. bashの導入

参照

入門bash 第3版

入門bash 第3版