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

Linux bash引号中使用|、$符号方法及CSV特殊字符替换指南

问题1:Bash环境引号内使用竖线|、美元符号$的方法

Bash的引号分为单引号、双引号两类,两种场景下的用法分别如下:

  • 单引号场景:单引号会将包裹的所有内容识别为字面字符串,特殊字符不会被解析,直接写|、$即可,不需要额外转义。
    示例:执行echo 'test|123 $var',输出结果为test|123 $var,$不会被识别为变量前缀,|也不会被识别为管道符。
  • 双引号场景:双引号默认会解析$为变量前缀,竖线|不会被解析,因此仅需要对$加反斜杠\转义即可。
    示例:执行echo "test|123 \$var",输出结果和上述单引号场景完全一致。
问题2:Bash中替换CSV文件内&、|、$为逗号的实现

推荐使用sed命令完成批量替换,操作简单性能高,具体用法如下:

  • 常规Linux环境(GNU sed)原地修改文件,不需要备份原文件:
    执行命令:sed -i 's/[&|$]/,/g' 目标文件.csv
  • 如果需要自动备份原文件(会生成后缀为.bak的原文件副本):
    执行命令:sed -i.bak 's/[&|$]/,/g' 目标文件.csv
  • 如果你使用的是macOS自带的BSD sed,原地修改的写法调整为:
    执行命令:sed -i '' 's/[&|$]/,/g' 目标文件.csv

命令说明:s/[&|$]/,/g代表全局匹配&、|、$三个字符中的任意一个,替换为逗号,使用单引号包裹表达式可以避免对$额外转义。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 00:54:04