1.下午在学习shell命令,写了一个shell程序。后来运行出现错误,一检查发现写错了个单词,本来是break,结果写成了bresk。想要用刚学过的 sed -i 命令给它改过来,并且存盘,然后就悲催了,无论怎么运行都提示错误,并且提示的错误都很莫名其妙。后来查找网络才知道原因。原来,mac下sed的参数含有-i,它就必须加上备份指令,即在-i后添加任意字符,该字符就作为备份文件的后缀。
比如我的修改代码为:
sed -i.bak 's/bresk/break/g' "break_01.sh"
后边的.bak一定要加上去,否则就运行不成功。后来又查找了下资料,发现有其他办法可以:
sed -i '' 'sed expression' file_name
好像是用的空文件来作为备份文件,具体也不是很懂,需要进一步学习啦。
然后后来又发现了这篇文章提供了更多的方法,可以参考下。
2.之前以为 mv 命令就是移动文件的,今天因为需要更改文件名,才意识到原来可以用 mv 来做。mark下
用法:mv [选项]... [-T] 源文件 目标文件
或:mv [选项]... 源文件... 目录
或:mv [选项]... -t 目录 源文件...
将源文件重命名为目标文件,或将源文件移动至指定目录。