Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

入門編:基本コマンドとコマンドライン操作

Unix 環境で必須となるファイル操作・権限管理の基本コマンド、ターミナル作業を加速する Readline キーバインド、およびコマンド履歴の活用法を解説します。

ファイルとディレクトリの基本コマンド

日常的に利用する代表的なコマンド群とその役割です。

» 移動と現在位置の確認

  • pwd: 現在作業しているディレクトリの絶対パスを表示(Print Working Directory)
  • cd <path>: 指定したディレクトリへ移動(引数なしで実行するとホームディレクトリ ~ へ移動)
  • cd -: 直前にいたディレクトリへ戻る

» ファイル・ディレクトリの一覧と操作

# 詳細情報と隠しファイル(.で始まるファイル)を表示
ls -la

# ディレクトリの再帰的作成(親ディレクトリも同時に作成)
mkdir -p project/src/utils

# 空ファイルの作成またはタイムスタンプの更新
touch README.md

# ディレクトリごと再帰的にコピー
cp -r project/ backup/

# ファイルの移動または名前変更
mv old_name.txt new_name.txt

# ファイルやディレクトリの強制削除
rm -rf temp_dir/

パーミッション(権限)の管理

Unix 系 OS では、すべてのファイルとディレクトリに対して「誰がどのような操作を行えるか」というアクセス権(パーミッション)が設定されています。

ls -l を実行した際、先頭に表示される10文字の記号(例: -rwxr-xr--)は以下の構成になっています。

  • 1文字目: 種別(- は通常ファイル、d はディレクトリ)
  • 2〜4文字目: 所有者(Owner)の権限
  • 5〜7文字目: 所有グループ(Group)の権限
  • 8〜10文字目: その他のユーザー(Others)の権限

権限は r(読み取り: 4)、w(書き込み: 2)、x(実行: 1) の3種類の合計値(8進数)で表されます。

# スクリプトに実行権限を付与する
chmod +x script.sh

# 権限を 755(所有者:全権限、他:読み取りと実行のみ)に設定
chmod 755 script.sh

# 所有者を変更(管理者権限が必要)
sudo chown user:group script.sh

Readline キーバインド(コマンドライン編集)

Bash の入力行編集ライブラリ(GNU Readline)には、作業効率を高めるキーボードショートカットが多数備わっています。

キー操作機能
Ctrl + Aカーソルを行の先頭へ移動
Ctrl + Eカーソルを行の末尾へ移動
Ctrl + Uカーソル位置から行頭までを削除(切り取り)
Ctrl + Kカーソル位置から行末までを削除(切り取り)
Ctrl + Wカーソル手前の1単語を削除
Ctrl + Y削除した文字列を貼り付け(ヤンク)
Ctrl + L画面をクリア(clear コマンドと同等)
Ctrl + C実行中のコマンドを中断

コマンド履歴(ヒストリ)の活用

過去に入力したコマンドを呼び出して再利用する機能です。

» インクリメンタル逆方向検索(Ctrl + R)

ターミナルで Ctrl + R を押してキーワードを入力すると、過去に入力したコマンド履歴の中から前方一致・部分一致で即座に検索して呼び出すことができます。続けて Ctrl + R を押すとさらに過去の履歴へと遡ります。

» ヒストリ展開の便利構文

# 直前に実行したコマンドを再度実行
!!

# 直前に実行したコマンドを sudo 付きで再実行
sudo !!

# 直前のコマンドの最後の引数を再利用(例: mkdir dir ➔ cd !$)
!$