linux,sed命令批量修改文件名和文件内容
-------批量替换文件名称for file in `ls | grep 文件名`donewfile=`echo $file | sed 's/查找的字符串/想要替换的字符串/g'`mv $file $newfiledone-------以下为示例批量替换文件名称,目的想找出 文件名称带res2openserv的文件夹,然后替换成res2servopenfor file in `ls | gre
-------批量替换文件名称
for file in `ls | grep 文件名`
do
newfile=`echo $file | sed 's/查找的字符串/想要替换的字符串/g'`
mv $file $newfile
done
-------以下为示例批量替换文件名称,
目的想找出 文件名称带res2openserv的文件夹,然后替换成res2servopen
for file in `ls | grep res` 这句话目的是循环查找 带res2openserv的文件夹
newfile=`echo $file | sed 's/res2openserv/res2servopen/g'` 这句话是替换内容
示例:
for file in `ls | grep res2openserv`
do
newfile=`echo $file | sed 's/res2openserv/res2servopen/g'`
mv $file $newfile
done
----批量替换字符串
sed -i 's/查找的字符串/想要替换的字符串/' `grep 查找的字符串 -rl /查找的目录`
示例:
grep openserv -rl /unios/seacrab-1.0/config` 这句话的意思是在/unios/seacrab-1.0/config 这个目录下面,查找带openserv 的字符串
sed -i 's/openserv/servopen/' 这句话是把openserv字符串替换成servopen
示例:
sed -i 's/openserv/servopen/' `grep openserv -rl /unios/seacrab-1.0/config`
更多推荐
所有评论(0)