我有文件的列表,從運行此命令如何更換使用中發現的每個文件的第一行「查找」
find . -type f -name ".txt"
我要替換文件的第一行找到替代第一線這個文本「1號線」
做我的研究,我發現了一個方法來刪除與
ex -sc '1d|x' file.txt
第一線,然後在前面加上一個文件
echo "line 1"|cat - file.txt > out && mv out file.txt
,但我不知道如何刪除第一行和前插爲每個文件中發現
我有文件的列表,從運行此命令如何更換使用中發現的每個文件的第一行「查找」
find . -type f -name ".txt"
我要替換文件的第一行找到替代第一線這個文本「1號線」
做我的研究,我發現了一個方法來刪除與
ex -sc '1d|x' file.txt
第一線,然後在前面加上一個文件
echo "line 1"|cat - file.txt > out && mv out file.txt
,但我不知道如何刪除第一行和前插爲每個文件中發現
您可以使用EXEC或與xargs的查找,但對於更復雜的命令,我總是在一個循環中運行處理。這樣更清楚。這裏是你可以做什麼:
find . -type f -name '*.txt' | while read -r f; do
ex -sc '1d|x' "$f"
echo "line 1"|cat - "$f" > out && mv out "$f"
done
您是否嘗試過使用exec命令? –