You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS环境下如何移除文件中行尾的短横线?已尝试命令均无效

macOS下移除行尾短横线的正确方法

针对你要移除文件行尾短横线的需求,以下是有效命令:

1. 预览修改结果(不修改原文件)

sed 's/-$//' output.txt

如果行尾可能存在空格、制表符等空白字符(短横线在这些字符前面),用这个命令匹配并移除:

sed 's/-[[:space:]]*$//' output.txt

2. 直接修改原文件(原地编辑)

macOS使用的是BSD版本的sed,原地编辑需要加空后缀参数(避免生成备份文件):

sed -i '' 's/-$//' output.txt

带空白字符处理的版本:

sed -i '' 's/-[[:space:]]*$//' output.txt

你之前的命令为什么无效:

  • sed -e 's/^-//' -e 's/-$//' output.txt:仅将修改结果输出到终端,未写入原文件;如果行尾有空白字符,-$无法匹配到短横线。
  • cat output.txt | tr -d -:tr会删除文件中所有短横线,不是仅行尾的。
  • tr -d '[0-9-]' < output.txt:错误地删除了所有数字和短横线,不符合需求。
  • sed 's/[0-9-]//g' output.txt > output1.txt:全局删除所有数字和短横线,不是只处理行尾。

内容的提问来源于stack exchange,提问作者Raymond

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 01:25:25