2016-05-22 100 views

回答

4

隨着GNU bash和GNU sed的:

shopt -s globstar 
sed -i 's/.*aprun.*/vasprun = "mpirun -np 64 vasp"/' -- **/file.txt 

man bash

globstar: 如果設置,模式**在路徑名擴展上下文中使用會匹配所有文件以及零個或多個目錄和子目錄。如果該模式後面跟有一個/,則僅匹配目錄和子目錄 。

1

您還可以使用find命令和管道輸出到sed命令查找文件

find . -name file.txt | sed -i 's/.*aprun.*/vasprun = "mpirun -np 64 vasp"/g'

相關問題