作者danny8376 (钓到一只猴子@_@)
看板Linux
标题Re: [问题] tr替换文字会乱替换
时间Tue Jul 7 00:54:10 2015
※ 引述《a07051226 (葡萄糖)》之铭言:
: 最近练习写sh脚本
: 我是先ls出档案列表,再一一带入指令中
: 不过因为要输出档案,所以也修改成输出列表
: 例如:
: Input :out01.mp4
: Output:out01.gif
: 我是用cat Input | tr .mp4 .gif > Output
: 不过实际上输出会变成out0f.gif
: 04的4也被替换成f了
: 有没有解决方法?
这代表你没理解tr的用途
tr的目的是替换"字元"
所以你上面的tr .mp4 .gif指的是
把.换成. m->g p->i 4->f
你真正需要的是sed
sed 's/\.mp4/.gif/g'之类的
: 顺便问问
: 自动化转档都有输入输出档
: 有没有更好的方法可以自动填入档案名称?
你可以看指令有没有直接改原档的选项
像sed有-i
不过像tr这种不吃档案的要另外处理就是
总之你会需要的是用变数
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.32.141.207
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Linux/M.1436201654.A.3B2.html
1F:推 a07051226: 长知识,最近才在看Shell Script,tr也是刚接触 07/07 01:43