linux批量修改文件内容
时间: 2023-04-26 07:02:45 浏览: 112
可以使用sed命令来批量修改文件内容。
语法格式:
```
sed 's/old-text/new-text/g' file1 > file2
```
其中,'s'表示替换,'old-text'是要被替换的字符串,'new-text'是替换成的字符串,'g'表示全局替换,file1是要修改的文件,file2是修改后的文件。
例如,要将文件test.txt中所有的'old'替换成'new',可以使用如下命令:
```
sed 's/old/new/g' test.txt > test_new.txt
```
另外,也可以使用find + xargs + sed的方式批量修改文件中的文本内容
```
find /path/to/dir -name "*.txt" -print0 | xargs -0 sed -i 's可以使用 `sed` 命令来批量修改文件内容。
例如,要将所有文件中的 "old" 替换为 "new",可以使用命令:
```
sed -i 's/old/new/g' *
```
该命令会在当前目录中的所有文件中替换 "old" 为 "new"。
-i 参数表示直接修改文件内容,而不是输出到标准输出。
s/old/new/g表示替换 old 为 new,g 表示全局替换.
需要注意的是,如果文件中的内容中包含 '/' 符号,则需要使用其他字符来替代 /。
如果文件很多,可以使用 find 命令来批量修改文件内容.
```
find /path/to/dir -type f -exec sed -i 's/old/new/g' {} +
```
该命令会在/path/to/dir目录可以使用sed命令进行批量修改文件内容。例如,在当前目录下批量替换文件中的"old"为"new",可以使用以下命令:
```
sed -i 's/old/new/g' *
```
该命令会在所有文件中查找并替换"old"为"new"。
-i 选项表示直接修改文件内容。
阅读全文