您可以指定要操作的行范围.例如,要在所有行上操作(当然是默认值):
sed -e "1,$ s/a/b/"
Run Code Online (Sandbox Code Playgroud)
但我需要操作除了最后一行之外的所有行.你显然不能使用算术表达式:
sed -e "1,$-1 s/a/b/"
Run Code Online (Sandbox Code Playgroud)
(在这种情况下,我使用的是cygwin,如果它有所不同)
Ada*_*amC 48
sed -e "$ ! s/a/b/"
Run Code Online (Sandbox Code Playgroud)
这将匹配除最后一行之外的每一行.通过快速测试确认!