Linux普及に応じてUNIXシェルに関わるユーザーが急増しています。本書はUNIXの特徴であるシェルを効率よく操作するための「シェルスクリプト」の利用方法をわかりやすくまとめたリファレンスです。GUIも便利なのですが、やはりUNIXはコマンドラインベースでコマンドや各種スクリプトを使って操作するのが王道です。そこで、やりたいことを“~したい”で探せる逆引きスタイルで、例示の内容を参考にしていろんなケースでのニーズに応えられるようにしてあります。「UNIXシェルスクリプト」を扱った記事は、WEB掲載記事などでも人気ランキング上位にランクされ続けており、根強いファンが多いテーマです。なお、本書では現在最も汎用的に使用できるbashをメインにして解説してあるので、広い読者層に重宝いただけます。
01:シェルの概要
1.1 シェルって何?
1.2 どんなシェルがあるのか
1.3 シェルスクリプトって何?
1.4 シェルの利点
1.5 シェルスクリプトも使いこなそう
1.6 シェルスクリプトの基礎知識
1.7 制御構文
1.8 関数
02:シェルコマンド目的別リファレンス
2.1 組み込みコマンド
ファイルを読み込んで実行したい(source)
コマンドのエイリアスを定義したい(alias)
一時停止したジョブをバックグラウンドで再開したい(bg)
組み込みコマンドを実行したい(builtin)
カレントディレクトリを変更したい(cd)
組み込みコマンドと外部コマンドを実行したい(command)
指定ワードの補完方法を指定したい(complete)
指定ワードの補完リストを作成したい(compgen)
変数を宣言したい(typeset)
ディレクトリリストを表示したい(dirs)
ジョブリストからジョブを削除したい(disown)
文字列を表示したい(echo)
組み込みコマンドの有効/無効を指定したい(enable)
引数を結合してコマンドを実行したい(eval)
現在のシェルを停止して別のシェルを実行したい(exec)
シェルを終了したい(exit)
以降実行するコマンドの環境に渡すワードを指定したい(export)
履歴リストからコマンドを選択したい(fc)
一時停止したジョブをフォアグラウンドで再開したい(fg)
引数を解釈したい(getopts)
コマンドの検索パスを再解釈したい(hash)
組み込みコマンドのヘルプを表示したい(help)
コマンド履歴を表示/変更したい(history)
動作しているジョブリストを表示したい(jobs)
プロセスを中止/再開したい(kill)
指定された算術式を評価したい(let)
ローカル変数を生成したい(local)
ログインシェルを終了したい(logout)
文字列を整形して表示したい(printf)
ディレクトリを移動するが戻ってきたい(pushd)
移動前のディレクトリに戻りたい(popd)
カレントディレクトリの絶対パスを知りたい(pwd)
標準入力を指定変数に代入したい(read)
指定変数を読み込み専用にしたい(readonly)
シェル変数の一覧表示と設定をしたい(set)
$n変数の位置をずらしたい(shift)
オプションを表示/変更したい(shopt)
シェルを一時停止したい(suspend)
条件式をテストしたい(test)
システム時間を知りたい(times)
シェルがシグナルを受け取る時の動作を設定したい(trap)
指定文字列をコマンドとして処理する動作を設定したい(type)
利用できるリソースを制御したい(ulimit)
ファイル生成のマスクを設定したい(umask)
エイリアスを取り消したい(unalias)
set内部コマンドで定義した変数を取り消したい(unset)
指定プロセスを一時停止したい(wait)
03:ユーザー管理
3.1 一時パスワードを発行したい
3.2 複数のユーザーを一気に登録したい
3.3 ユーザーをまとめて削除したい
3.4 ユーザーとグループの情報を調べたい
3.5 ユーザー名をまとめて変更したい
3.6 ユーザーのパスワードをまとめて変更したい
3.7 ユーザーの情報をまとめて変更したい
3.8 ユーザーのホームディレクトリを変更したい
3.9 ユーザーのホームディレクトリをまとめて変更したい
3.10 ユーザーのシェルを変更したい
3.11 ユーザーのシェルをまとめて変更したい
3.12 ユーザーの主グループを変更したい
3.13 ユーザーの主グループをまとめて変更したい
3.14 ユーザーをまとめて補助グループに登録したい
3.15 グループに所属しているユーザーを表示したい
3.16 あるグループのユーザーの最終ログイン日時を調べたい
3.17 ユーザーが最後に実行したコマンドをまとめて表示したい
3.18 ユーザーが利用しているディスク領域を調べたい
3.19 ユーザーにqmail用のディレクトリを作成したい
3.20 全ユーザーにqmail用のディレクトリを作成したい
3.21 全ユーザーに初期化ファイルをコピーしたい
04:ファイル・ディレクトリ操作
4.1 バックアップファイルを削除したい
4.2 バックアップファイルをまとめて削除したい
4.3 ディレクトリを指定してバックアップファイルを削除したい
4.4 emacsのバックアップファイルを削除したい
4.5 .backか ~ がつくバックアップファイルをまとめて削除したい
4.6 ドットで始まるファイルを削除したい
4.7 スクリプトファイルを検索したい
4.8 カレントディレクトリのみのバックアップを作成したい
4.9 サブディレクトリも含めてバックアップを作成したい
4.10 ファイル名に含まれるスペースをアンダーバーに変更したい
4.11 ディレクトリも含めてファイル名を変更したい
4.12 ファイル名に拡張子をまとめて変更したい
4.13 ディレクトリをツリー表示したい
4.14 ディレクトリとファイルをツリー表示したい
4.15 ディレクトリ内を利用しているユーザーを調べたい
4.16 ディレクトリ内を利用しているグループを調べたい
4.17 ディレクトリ内のユーザーごとの使用サイズを調べたい
4.18 ディレクトリ内のグループごとの使用サイズを調べたい
4.19 ファイルの所有者を変更したい
4.20 ファイルの所属グループを変更したい
4.21 ファイルの所有者と所属グループを同時に変更したい
4.22 ファイルのタイムスタンプを変更したい
05:プロセス管理
5.1 全ユーザーが実行しているプログラムを一覧表示したい
5.2 自分が実行しているプログラムを一覧表示させたい
5.3 psコマンドでカットされている情報を表示させたい
5.4 プロセスの親子関係を表示させたい
5.5 サービスを開始させたい
5.6 サービスを停止させたい
5.7 プロセスを強制終了させたい
5.8 サービスの状態を表示させたい
5.9 サービスを再起動させたい
5.10 起動中のサービスのみを再起動させたい
5.11 サービスを再起動せずに設定ファイルを有効にしたい
5.12 全ランレベルのサービスの開始状態を表示したい
5.13 xintendから開始されるサービスを表示させたい
5.14 xintendから開始されるサービスの状態を変更したい
5.15 現在のランラベルで実行されるサービスのみ表示させたい
5.16 プロセスの優先順位を変更したい
5.17 httpdサーバの数を数えたい
06:文章・テキスト処理
6.1 タブをスペースに置換したい
6.2 スペースをタブに置換したい
6.3 拡張子がtxtのファイルから指定文字列を含むファイルを検索したい
6.4 指定文字列を含むファイルを検索したい
6.5 拡張子がtxtのファイルから指定文字列を置換したい
6.6 指定文字列を含むファイルの文字列を置換したい
6.7 WindowsのテキストをUNIX形式の改行コードへ変換したい
6.8 Windowsの漢字テキストファイルをUNIX形式に変換したい
6.9 大文字から小文字へ変換したい
6.10 小文字から大文字へ変換したい
6.11 テキストファイルを一定のサイズに分割したい
6.12 カタログデータをテンプレートからHTMLファイルを作成したい
6.13 HTMLからリンク情報を取得したい
6.14 HTMLから画像情報を取得したい
6.15 HTMLのテーブル情報からCSV形式情報を出力したい
6.16 rpmパッケージファイルの情報を調べたい
6.17 debパッケージファイルの情報を調べたい
07:ネットワーク
7.1 指定ホストが動作しているか調査したい
7.2 複数の指定ホストでコマンドを実行したい
7.3 複数の指定ホストでコマンドを実行したい(OpenSSH)
7.4 指定ホストへファイルを転送したい
7.5 複数の指定ホストからファイルを転送したい
7.6 複数の指定ホストからファイルを転送したい(OpenSSH)
7.7 指定ホストにローカルディレクトリをバックアップしたい
7.8 sshのパスワードなしでcronを実行したい
7.9 指定ホストにローカルディレクトリをバックアップしたい
7.10 ディスクを完全に消去したい
7.11 指定ホストに履歴つきでパーティションをバックアップしたい
7.12 Webページを取得したい
7.13 サイト全体のWebページを取得したい
7.14 Apacheのログを分割したい
7.15 ApacheのログのIPアドレスを名前に変換したい
7.16 経路情報を表示したい
7.17 複数ユーザーへメールを送信したい
7.18 複数ユーザーの未読メールヘッダを表示したい
7.19 メールから添付ファイルを抽出したい
7.20 メールを携帯電話に転送したい
7.21 複数の鍵を作成したい
付録
付録 A 組み込みシェルコマンドと予約語
付録 B シェルの組み込み変数
付属データはこちら
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。