shell脚本中,求详细讲解哈这个意思 sed -i "s#\t#\|#g" file.txt

sed-i"s#\t#\|#g"file.txt... sed -i "s#\t#\|#g" file.txt 展开
 我来答
百度网友5311d79
2015-04-03 · TA获得超过1.9万个赞
知道大有可为答主
回答量:6356
采纳率:71%
帮助的人:3219万
展开全部
sed的替换命令格式:s/A/B/g 或者 s#A#B#g 或者 s_A_B_g

#只是分隔符而已,为满足格式需要。
将所有制表符\t替换为|
g表示全局替换,有多少次替换多少次。
追问
为什么我试了,换成字母能够替换,换成制表符就不能替换了啊?
sed -i "s#\t#s#g" employee.txt
[root@VMB bash]# cat employee.txt
100 Thomas Manager Sales $5,000
追答
  1.  确认文件没有在windows上编辑过,为unix格式,不确定的话用dos2unix转格式。

    dos2unix employee.txt

  2. sed建议用单引号,此外,请确认下文件中的到底是制表符还是空格,或者两个都替换:

        sed -ir 's#[\t ]+#s#g' employee.txt

exp19979
2015-04-03 · 超过16用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:31.6万
展开全部
把file.txt文件里每行的\t(指的是Tab空格)替换成 “|”
追问
亲问为什么要加上#号啊,不懂啊
亲问为什么要加上#号啊,不懂啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式