答案1
可编写脚本的编辑器使这变得非常简单!
printf '%s\n' '55m22' 'wq' | ed -s input
这将发送两个命令到ed
(编辑名为 的文件input
):
55m22
-- 将第 55 行移到第 22 行之后wq
-- 将文件保存回磁盘并退出。
答案2
短一点:
ex input <<<"55m22|wq"
答案3
它vi
比 in稍长一些ed
:
vi input
55Gdd23GPZZ
55G
...转到第 55 行
dd
...删除一行
23G
...转到第 23 行
P
...将删除的行粘贴到第 23 行之前
ZZ
...写入文件并退出