Diary

Diary

日々学んだことをアウトプットする場として初めてみました

【ターミナル】直前のコマンドを引数を変えて実行

直前のコマンドを引数を変えて実行

例えば以下のように、1-10 までの素数を求めるワンライナーがあります。

$ seq 10 | factor | awk 'NF == 2'

動作を確かめた後で様々な数値で試したいとき、そのまま 10 を書き換えてもよいですが以下の方法があります。

$ !!:s/10/100
$ fc -s 10=1000
$ ^10^10000

以下のように for 文にも使えます

$ for i in {1..3}; do echo $i; done
1
2
3
$ ^3^12
for i in {1..7}; do echo $i; done
1
2
3
4
5
6
7

おわりに

どれも覚えにくいこまんどですが、個人的には ^10100 のパターンを使ってみようかと思っています。