使用 sed 修改和执行上一条命令

Hib*_*cus 1 unix bash sed command-line

我有一堆 pdf 文件,它们与一个位于目录中的很长的命令行相连。有些是英语,有些是法语,用_e.pdf和区分_f.pdf

因为它们以特定顺序加入,命令行不能缩短,但我想修改并重新执行它,只需替换_e_f. 我该如何使用sed(或其他)?

假设命令是

pdfjoin file1_e.pdf file2_e.pdf file3_e.pdf 
Run Code Online (Sandbox Code Playgroud)

在历史上它是命令 10。

我已经到了

echo !10 | sed 's/_e.pdf/_f.pdf/g'
Run Code Online (Sandbox Code Playgroud)

这与我想运行的命令相呼应。但我实际上想运行它,而不仅仅是显示命令。

Red*_*ick 5

你试过反引号吗?

`echo !10 | sed 's/_e.pdf/_f.pdf/g'`
Run Code Online (Sandbox Code Playgroud)

虽然我不禁觉得你应该使用make.