ターミナルで作業する事が多いんですが、そのときによく使っているちょっとしたときに便利なコマンドなどを紹介します。
bashで説明します。
(zsh でもつかえるし、もっと便利になる物も多いですが)
1. 並列な階層に複数ディレクトリを一度に作成
{}
を利用します。
aa,bb,cc というディレクトリを作るとき。
mkdir {dir1,dir2,dir3}
複数ディレクトリ以下に複数ファイルを touch するみたいなのもできます
touch {dir1,dir2}/{file1,file2}
また、名前の一部が違うようなディレクトリやファイルを同時に作成できます。
touch foo{1,2,3}bar
バックアップをとるときなども使えます。
(@tukiyo3 さんにコメントでいただいた例を追記しました。ありがとうございます!)
cp foobar{,.bak}
2. ディレクトリを作って移動
mkdir /the/directory/path; cd $_
よくありますよね。何度も打つとめんどくさいですね。
$_
で直前のコマンドの引数を取得できます。
(行分けても書けます)
cd
で移動ではなく touch
でそのディレクトリにファイル作成などもできます。
また、ESC-.
でも $_
と同じものを挿入できます。
(@tukiyo3 さんありがとうございます!)
例:
3. 1つ前にディレクトリに戻る
cd -
これは結構使います。
4. コマンドを複数プロセスで並列実行
xargs の -P(maxprocs)
オプション使えば、複数プロセスで並列に実行できます。
たとえば、以下のようなurlリスト url.list
があったときに、ここに記載されたURL各行に並列に curl したいとします。
http://example.com
http://example.co.jp
http://example.jp
http://example.net
http://example.asia
下記コマンドでできます。(5プロセスで実行)
cat url.list | xargs -L1 -P5 curl
xargs は他にも色々できますね。
5. カーソルを単語ごとに移動
カーソル移動は、
Ctrl-A
で先頭、 Ctrl-E
で末尾には飛べますが、
ESC-f
で1単語進める、 ESC-b
で1単語戻る事ができます。
さらにこの ESC
は CTRL-[
でもokです。 Vim もそうですね。
まとめ
色々あるとは思いますが、操作できれば良いんだと思います。
もっと詳しくは man bash
に色々書いてあります。
エディタはVim派です。