エンジニア歴5年の人が基本的かつ個人的によく使うLinuxコマンド(macのターミナルでも使える)をまとめました。
覚えておきたいオプション等は個人の意見であり、他の方からしたらもしかすると、「これもあったほうがいい」「それは別に」という意見もあるかもしれません。
随時コメントいただければ更新していきます。
目次
- ワイルドカード
- lsコマンド = list
- cdコマンド = change directory
- pwdコマンド = print working directory
- mkdirコマンド = make directory
- touchコマンド = ??
- rmコマンド = remove
- catコマンド = concatenate
- lessコマンド
- cpコマンド = copy
- mvコマンド = move
- findコマンド
- grep コマンド = global regular expression print
- | = パイプライン
ワイルドカード
ワイルドカードとは、Linuxのコマンドラインで複数のファイルやディレクトリを操作する際に利用する特殊記号
*
と ?
*
任意の文字列
.rb拡張子のファイルのみを一覧表示
ls *.rb
.log ファイルのみを削除
rm *.log
ファイル名の中にfileという文字列を含むファイルすべてを一覧表示
ls *file*
?
任意の1文字
拡張子が2文字のファイル一覧を表示
ls *.??
lsコマンド = list
ファイルやディレクトリの一覧を表示
覚えておきたいオプション
-a
全てのファイルを表示
-A
./ ../を除く全てのファイル
-l
ファイル・ディレクトリの詳細情報を表示
-h
ファイルサイズを見やすくする
-R
再帰的にディレクトリの中身を表示
cdコマンド = change directory
指定したディレクトリに移動
pwdコマンド = print working directory
現在位置を絶対パスで表示する
mkdirコマンド = make directory
ディレクトリの作成
覚えておきたいオプション
-p
階層ごとディレクトリを作成することが可能
touchコマンド = ??
タイムスタンプの更新、指定したファイルが存在しない場合、ファイル生成する
rmコマンド = remove
ファイル・ディレクトリの削除
覚えておきたいオプション
-f
エラー表示せずに強制的に削除する
-i
ファイル削除前確認
-r
ディレクトリの削除
catコマンド = concatenate
ファイルを結合して中身を表示
よく使う使い方
cat fileA
こんなこともできる
fileAとfileBを結合してfileABに格納する
cat fileA fileB > fileAB
ただし、catコマンドは大きいファイルは向いていない
その代わりにlessコマンドをよく使う
lessコマンド
テキストファイルを1画面ずつ表示する
覚えておきたいオプション
-N
行数を表示
-S
行を折り返さない(横スクロールできない)
+F
リアルタイムで監視
lessコマンドの操作方法
key | 内容 |
---|---|
/文字列 | 下方向に向かって検索をかける |
?文字列 | 上方向に向かって検索をかける |
n | 次の検索結果へ移動する |
N | 前の検索結果へ移動する |
q | lessコマンドを終了する |
cpコマンド = copy
ファイル・ディレクトリのコピー
覚えておきたいオプション
-p
ディレクトリを再帰的にコピーする
mvコマンド = move
ファイル・ディレクトリの移動する
使用例
mv ~/workspace/hogehog.rb ~/workspace/hogehoge.rb
上記のように、ファイル作成時にtypo等がった際に、ファイル名を変更することもできます。
findコマンド
ファイルやディレクトリを検索する
使用例
find src/ -type f -name “*list*"
上記の例はキーワードでファイルを検索した例
findコマンドはできることがたくさんあるぶん覚えるのも大変なので、都度検索して利用しています
grep コマンド = global regular expression print
指定した文字列を検索する
使用例
grep -r 'HogeHoge' app/
上記のように、ディレクトリを指定して、指定した文字列が含まれるファイルを検索します。
例えば、あのメソッドどこで定義されてるかなー?と調べるのに効果的です。
(テキストエディタを使っている人はもしかするとそちらの機能を使うと思います。)
覚えておきたいオプション
-r
ディレクトリ 内のファイルを検索する
-i
大文字と小文字を区別せず検索する
-l
検索結果にファイル名のみ出力する
-C
検索結果に一致した箇所から前後に指定した行数表示する
|
= パイプライン
コマンドの標準出力を次のコマンドの標準入力へ渡す
例えば、catコマンドとgrepコマンドを使うことで、ファイルないからある文字列を検索して、検索結果のみを出力することができます
cat account.txt |grep ‘北野 渚’