Linuxでよく使う基本的なコマンドの逆引き一覧
長くなるので後で切り出す
必要そうなのは随時増やします
長そうなのはリンク先に丸投げします
ここに書かれたコマンドは全て非管理者権限のシェルで実行されることを想定しています
管理者権限が必要なコマンドは頭にsudoをつけています
全般
コマンドのヘルプを見る
<コマンド> --help
または<コマンド> -h
どちらかしか対応していない場合がある
コマンドのマニュアルを見る
man <コマンド>
全てのコマンドが対応しているわけではない
日本語化されていないマニュアルもある
コマンドオプションについて
ls -aの-aのことをオプションという
-(ハイフン)から始まるのがオプション
アルファベット1文字のオプションと複数文字のオプションがある
例) ls -aとls --all
ほとんどのオプションは複数同時に使える
例) ls -a -l
1文字のオプションは連結できる
ls -a -l -> ls -al
ディレクトリ操作系
cd <ディレクトリ>
cd
またはcd $HOME
カレントディレクトリを確認する
pwd
ファイルの一覧を見る
カレントディレクトリの中を見る場合
ls
特定のディレクトリの中を見たい場合
ls <ディレクトリ>
ファイルごとの詳細な情報も見たい場合
ls -l
またはll
表示される主な情報
ファイルタイプ(ディレクトリかどうかもわかる)
作成日時
更新日時
ファイルサイズ
ファイル名・ディレクトリ名
リンク先(シンボリックリンクの場合)
ハードリンクも何か出たっけ?
隠しファイルや隠しディレクトリも表示したいとき
ls -a
またはla
ファイルのみを表示したいとき
ls -F | grep -v / | sed s/\*$//g
ディレクトリのみを表示したいとき
ls -F | grep / | sed s/\\/$//g
ファイルを移動する
mv <移動前> <移動先>
例) mv foo.sh ./bar/
foo.shをbarディレクトリの中に移動する
ファイル名を変更するのにも使える
mv <変更前> <変更後>
例) mv foo.sh bar.sh
foo.shのファイル名をbar.shに変更する
ファイルをコピーする
cp <コピー前の場所> <コピー後の場所>
ディレクトリを丸ごとコピーする場合
cp -r <コピー前の場所> <コピー後の場所>
ファイルを削除する
rm <削除するファイル>
-fを付けないとファイルを削除するときに本当に削除していいか訊かれることがある
rm -f <削除するファイル>
ディレクトリごと削除する場合
rm -rf <削除するディレクトリ>
-fを付けないとディレクトリの中のファイルごとにいちいち質問されて面倒
つけ忘れて実行してしまった場合はCtrl-cで中断して初めからやり直そう
ファイルの圧縮・解凍
方法が多岐に渡るためここを見た方が早い
リンクの作成
ln -s <ファイル名> <リンク名>
権限の基礎知識
これを知らないことには何も始まらない
権限を設定できる対象は3つ
u: 所有者
g: 所有グループ
o: それ以外
a: 上記3つすべて
権限の種類も3つ
r: 読み取り権限
w: 書き込み権限
x: 実行権限
あくまでファイル自身を直接実行する場合
シェルスクリプトをshコマンドの引数に渡して実行する場合などでは必要ない
権限を確認する
ls -l
「ファイルごとの詳細な情報も見たい場合」と全く同じコマンド
任意の権限を許可する
chmod <対象>+<種類> <ファイル>
例) chmod o+w foo.txt
foo.txtを誰でも書き込みできるようにする
任意の権限を剥奪する
chmod <対象>-<種類> <ファイル>
例) chmod a-x foo.sh
foo.shを(root以外)誰も実行できないようにする
ディレクトリとその中のファイル全てを一括で変更する
chmod -R <パーミッション> <ファイル>
大文字のRなので注意
参考
所有者を変更する
chown <所有者のユーザー名> <ファイル>
所有グループを変更する
chown <所有者のユーザー名>:<所有グループ名> <ファイル>
所有者を省略してコロン(:)から右だけを書いてもいい
ディレクトリとその中のファイル全てを一括で変更する
chown -R <所有者のユーザー名> <ファイル>
chown -R :<所有グループ名> <ファイル>
chown -R <所有者のユーザー名>:<所有グループ名> <ファイル>
大文字のRなので注意
ソフトウェア(パッケージ)の管理
ディストリビューションによって違う
RedHat系(CentOSなど)
yumコマンドを使う
aptコマンドを使う
ファイルを編集する系
ファイルの中身を確認する
cat <ファイル>
ファイルが長い場合は
cat <ファイル> | less
テキスト形式のファイルを編集する
vim <ファイル>
基本はこれだけ覚えておけばよさそう
iキー: 挿入モードに入る
普通のテキストエディタと同じような操作ができるようになる
Escキーで戻る
:w: 上書き保存
:wq: 上書き保存してから閉じる
:q: 閉じる(通常)
:q!: 変更を保存せずに閉じる
もっとちゃんと活用したい人は以下のページを参照
nano <ファイル>
使い方は画面を見て
ほかにもありそうだけど筆者が使ったことがあるのがこれだけ
空のファイルを作成する
touch <ファイル名>
何も書き込まれていないファイルが作成される
標準出力関連
標準出力とはコンソール上に表示される文字のこと
標準出力をファイルに書き出す
<標準出力を出すコマンド> > <保存するファイル名>
例) ls --help > ls.txt
lsコマンドのヘルプがls.txtに保存される
長い出力をスクロールして見れるようにする
<標準出力を出すコマンド> | less
検索して合致した行だけを出力する
<標準出力を出すコマンド> | grep <検索文字列>
行数を出す
<標準出力を出すコマンド> | wc -l
その他
シェルスクリプトの実行
sh <スクリプトファイル>
コマンドが格納されている場所を確認する
which <コマンド>
使用中のユーザーでしか使えないコマンドなのかを確認するのにも使える
蒸気機関車を走らせる
sl
あらかじめslコマンドをインストールしておかないと使えない
書きたいけどまだ書いてないコマンド
ps
kill
service
systemctl
top
df
ユーザー作成・編集・削除