我经常发现自己在做类似以下的事情:
$ big long command 1
$ big long command 2
$ diff -u <(big long command 1) <(big long command 2)
我怎样才能让shell(bash
在我的例子中)为我构建第三个命令,而不需要将那些大而长的命令剪切并粘贴到 s 中<()
? (如果big long command
重新执行 s显然没问题;它们被认为可以安全地重新运行。)
答案1
您可以使用 Bash shell 的历史记录来获取最后 2 个运行命令,如下所示:
$ big long command 1
$ big long command 2
$ diff -u <(!-2) <(!-1)
这将获取当前命令减 2( big long command 1
) 和当前命令减 1( big long command 2
) 并将它们运行到diff
.