Linux環境で頻繁に使う定番コマンド・管理操作・ログ整形操作を 主要オプションと用途説明付きでまとめた実務メモ。
管理系の定番コマンド
apt(パッケージ管理)
sudo apt update
sudo apt upgrade
sudo apt autoremove
update: パッケージリストを最新化upgrade: 既存パッケージを更新autoremove: 不要になった依存パッケージ削除-y: 確認なしで実行
OSアップグレード確認
sudo do-release-upgrade -c
-c: 次のリリースがあるか確認のみ
シンボリックリンク
ln -s /target_full_path ~/slink_name
-s: シンボリックリンク-f: 既存ファイルを上書き
定番コマンド(基本操作)
ls(一覧表示)
ls
-l: 詳細表示-a: 隠しファイル含む-h: サイズを人間可読
cd / pwd
cd /path
pwd
cd -: 直前のディレクトリへpwd: 現在位置表示
cp / mv / rm
cp src dst
mv src dst
rm file
-r: 再帰処理-i: 上書き確認-f: 強制実行
ファイル内容確認
less file
/word: 検索q: 終了
head -n 20 file
tail -f file
-n: 行数指定-f: 追従表示
システム情報
uname -a
-a: 全情報表示
df -h
du -sh dir
-h: 人間可読-s: 合計のみ
プロセス管理
top
ps aux
a: 全ユーザーu: ユーザー表示x: ttyなし含む
ネットワーク関連
ping host
-c: 回数指定
ifconfig
※ 新しめ環境では ip a 推奨
SSH / SCP
ssh user@host
-i: 秘密鍵指定-p: ポート指定
scp src user@host:dst
-r: ディレクトリ転送
圧縮・解凍
tar -czvf archive.tar.gz dir
-c: 作成-x: 展開-z: gzip-v: 詳細-f: ファイル指定
zip -r archive.zip dir
unzip archive.zip
パスワード生成
mkpasswd -l 16 -c 2 -C 2 -d 2 -s 2
-l: 全体文字数-c: 小文字数-C: 大文字数-d: 数字数-s: 記号数
出力整形・ログ解析
sed(置換)
sed 's/patternA/patternB/'
sed 's/patternA/patternB/g'
g: 全置換
awk(抽出)
awk '{
match($0 ,/src="[^"]+"/, src);
match($0 ,/dst="[^"]+"/, dst);
print src[0], dst[0];
}' |
uniq -c |
sort -nr
match(対象文字列, 正規表現, 配列): 正規表現にマッチした文字列を 配列[0] に格納$0: 入力された1行全体uniq -c: 重複行をカウントおよび削除
集計(通信量など)
awk '{
match($0 ,/dstip="[^"]+"/, dstip);
match($0 ,/bytes="[^"]+"/, bytes);
print dstip[0], bytes[0];
}' |
sed 's/bytes=//' |
awk '{bytes[$1]+=$2} END {for (d in bytes) print bytes[d], d}' |
sort -nr
- 送信先ごとのバイト数を集計
更新方針
- オプションは「全部覚えない」
- よく使う形を即引けることが最重要
- 実務で使ったら随時追記していく
次の拡張候補
grep / find / xargssystemctl / journalctlcrontabrsyncip / ss / tcpdump