仕事を10倍速くするコマンドライン操作Tips | 実験用サイト

技術

仕事を10倍速くするコマンドライン操作Tips

Cat: 技術

こんにちは。CTOの馬場です。
今回もインフラエンジニア向けにちょっとした情報を紹介します。
今回はコマンドラインの操作を10倍速くして、コマンドラインを楽しくTipsをご紹介します。
もちろん独断と偏見で選んでいます。
これから挙げる5つのコマンドを覚えるだけで、コマンドライン操作は10倍(当社比)速くなります!
この5つを使っていない人が周りにいたら、ぜひ教えてあげましょう!
*諸注意*
– ショートカットキー表記の`+`は同時押しの意味です。
– bashで動作確認しています


# 前のコマンド:`↑`または`Ctrl+p`
コマンドラインで`↑`または`Ctrl+p`を押すと、直前に実行したコマンドを呼び出すことができます。

baba@dynass:/$

この状態でコマンドラインで`↑`または`Ctrl+p`をタイプすると・・・

baba@dynass:/$ tail /var/log/messages

直前に実行したコマンドが表示されます。
この状態で更に`↑`または`Ctrl+p`をタイプすると・・・

baba@dynass:/$ cat /etc/resolv.conf

さらにその前のコマンドが表示されます。
– 何度も同じコマンドを入力するとき、前のコマンドを少し修正して使いたいときにとても便利です
– 後述の行頭移動や行末移動と合わせて利用するとすばらしい!
# 補完:`TAB`
コマンド名、パスは、ちょっと打って`TAB`キーをタイプすると補完できます。
1. 入力ミスがなくなる
2. タイプ数が少なくなる
という2つの利点があるのでぜひ常用してください。

baba@dynass:/$ ls /u

この状態で`TAB`をタイプすると・・・

baba@dynass:/$ ls /usr/

こうなります。
ちなみに、候補が複数ある場合、`TAB`キーを2回タイプすると候補が表示されます。

baba@dynass:/$ ls /m

この状態で`TAB`を2回タイプすると・・・

baba@dynass:/$ ls /m
media/ mnt/

こうなります。
# 履歴探索:`Ctrl+r`
コマンドラインで実行した履歴を一瞬で探索できます。
コレを覚えると操作が**冗談ではなく10倍速くなります!**

baba@dynass:/$

この状態で`Ctrl+r`と打つと・・・

baba@dynass:/$
(reverse-i-search)`':

履歴探索モードに入ります。
このまま、実行したコマンドラインの一部をタイプすると・・・
(今回は`ta`とタイプしました)

(reverse-i-search)`ta': tail -f /var/log/cron

一番近い履歴が表示されます。
この状態で更に`Ctrl+r`をタイプすると・・・

(reverse-i-search)`ta': tail -f /var/log/messages

遡って探索してくれます。
この状態で`TAB`をタイプすると、コマンドラインに過去のコマンドが入力された状態になります。

baba@dynass:/$ tail -f /var/log/messages

そうしたら`Enter`をタイプして実行しましょう。
設定ファイル編集→デーモンの再起動→ログ確認 などを繰り返す場合、この履歴探索を使うと操作が圧倒的に速くなります。
– この`Ctrl+r`と、次の`Ctrl+a`、`Ctrl+e`を組み合わせると更にコマンドライン操作が楽になりますよ!
– うまく探索できなかった、遡りすぎてしまった場合には、`Ctrl+c`でいったんリセットしましょう
# カーソル移動:`Ctrl+a`, `Ctrl+e`
– `Ctrl+a`:カーソルを行頭に移動する(Homeキーと同じ)
– `Ctrl+e`:カーソルを行末に移動する(Endキーと同じ)
履歴探索結果からスタートしてみましょう。

(reverse-i-search)`ta': tail -f /var/log/messages

この状態で、`Ctrl+e`をタイプすると・・・

baba@dynass:/$ tail -f /var/log/messages

カーソルが行末に移動します。
そのままパイプして`grep`につなげたりできます。便利!

baba@dynass:/$ tail -f /var/log/messages | grep kernel

行頭移動を使うと、同じファイルに対して利用するコマンドを簡単に変更できます。
ぜひ利用してください!

(問い合わせ誘導コンテンツ)

PAGE TOP