Debianのコマンドライン操作
Debianの基本的なコマンドから一歩踏みでたショートカットキー等の覚書です。一歩踏み出たじゃなくて初歩だという人もいるかもしれませんがご容赦ください。
入力補助系
コントロールキーとの同時押しのショートカットの主なものは次のようになります。
- U:カーソル位置から左を削除
- K:カーソル位置から右を削除
- A:カーソル位置を先頭に
- E:カーソル位置を末尾に
- W:単語をカット
- Y:単語をペースト
- R:キー入力で履歴を検索
Job系
実行したコマンドを中断するにはCTL+Cを使います。
処理時間の長いコマンドを入力する際に、最後に&を入力すれば、入力はすぐに戻ってきます。
この時、バックグラウンドに追いやったジョブを確認するには「jobs」コマンドを入力します。
$ jobs
[1]+ 実行中 sleep 30000 &
jobsの出力では、IDが付与されているので、それを指定してfgコマンドを使うことで、フォアグラウンドへ呼び戻せます。
sleep 30000
再度バックグラウンドに追いやるには、まずCTL+Zで処理を止めます。
[1]+ 停止 sleep 30000
そのままだと停止したままなので、job IDを指定してbgコマンドでバックグラウンドで稼働させます。
[1]+ sleep 30000 &
nohup
リモート操作で端末を閉じても処理を実行させたい場合は、nohupの後にコマンドを入力して最後に&を付けます。
&を付けない場合で、端末を閉じてしまった場合は処理は中断されます。nohupを付けたのに、&を付け忘れた場合は、CTL+Zで停止したのちにbgでバックグラウンドへもっていけば、端末を閉じても継続されます。
この方法は、最初にパスワードを求められる長い処理の際に利用できます。
password: *****
CTL+Z
bg 1
nohupを付けずに実行してしまったコマンドをバックグラウンドで維持したい場合は、CTL+Zで停止し、bgでバックグラウンドに持って行ったあと、disown %<Job ID>とします。これだけIDの指定に%がつくことに注意してください。
disownしたプロセスは端末がないのでps a(端末を持つ全プロセス)ではプロセスは表示されなくなります。代わりにps xを使います。
他
コマンドの途中で改行したい場合は¥(環境によってはバックスラッシュ)を入力した後に改行を入れます。
CTL+Sを押すと画面が更新されなくなります。この状態から元に戻すにはCTL+Qを押します。
画面をクリアしたいときはCTL+Lを押します。
プロンプト(入力コマンドの左側)が長くなりすぎて見づらくなった時などは「PS1」という変数に書式を代入することで変化させることができます。
その際、主なキーワードは次のようになります。¥は環境によってバックスラッシュになります。代入する時はPS1="¥w"といった形でクォートで囲います。
- ¥w カレントディレクトリ
- ¥W 親ディレクトリ
- ¥u ユーザー名
- ¥h ホスト名
- ¥$ $か#
history -cでヒストリを削除します。