ubuntu编译问题收集
1、报错 “build.sh /bin/bash^M: 坏的解释器:没有那个文件或目录”。
解析: \r 这个符号怎么出现的,于是各种百度,才知道原因可能是因为我在win下操作的时候,修改到了此文件。
在win下编辑的时候,换行结尾是\n\r , 而在linux下 是\n,所以才会有 多出来的\r
解决:用指令:sed -i 's/\r$//' build.sh
会把 build.sh 中的\r 替换成空白!再次编译!成功!!
2、编译错误error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or dir
解决:
sudo apt-get install lib32ncurses5 lib32z1
3、查找关键字
grep -rnw ./ -e "song"
注释:grep -rnw '/path/to/somewhere/' -e "pattern"
其中/path/to/somewhere/要搜索的路径,pattern要搜索的内容
简单的 grep -rl "keyword" ./,列出当前路径下的文件。
4、sed批量替换多个文件内容
格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径`
linux sed 批量替换多个文件中的字符串
sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`
例如:
sed -i "s/192.168.35.225/192.168.10.104/g" `grep 192.168.35.225 -rl ./`
sed -i 's#SZ_512M#SZ_256M#g' include/configs/mx6ul_14x14_evk.h //将SZ_512M替换成SZ_256M
sed -i 's/原字符串/新字符串/g' /home/1.txt