使用 sed -i 处理目录中所有文件时,即使文件中不包含某个字符串,这个文件也会被修改为系统当前时间。不符合只处理目标文件的预期。
1. 下面的命令会让当前目录下所有文件的修改时间发生变化:
cd tmp_dir
sed -i "s/test/testing/" *
2. 只修改匹配某个字符串的文件,搜索asd并替换为def:
grep asd -r -l | xargs sed -i "s/asd/def/g"
使用 sed -i 处理目录中所有文件时,即使文件中不包含某个字符串,这个文件也会被修改为系统当前时间。不符合只处理目标文件的预期。
1. 下面的命令会让当前目录下所有文件的修改时间发生变化:
cd tmp_dir
sed -i "s/test/testing/" *
2. 只修改匹配某个字符串的文件,搜索asd并替换为def:
grep asd -r -l | xargs sed -i "s/asd/def/g"