1:查詢
find . -type f -name "*.html"|xargs grep 『yourstring』
2:查詢並替換
find -name '要查詢的檔名' | xargs perl -pi -e 's|被替換的字串|替換後的字串|g'
perl -pi -e
在perl 命令中加上-e 選項,後跟一行**,那它就會像執行乙個普通的perl 指令碼那樣執行該**.
從命令列中使用perl 能夠幫助實現一些強大的、實時的轉換。認真研究正規表示式,並正確地使用,將會為您省去大量的手工編輯工作。
3:批量修改資料夾許可權
find . -type -d -name *.html|xargs chmod 755
4:批量修改檔案許可權
find . -type -f -name *.html|xargs chmod 644
查詢和替換是很常用的操作。
這裡介紹的小小技巧可以使你很輕鬆地完成大量重複、繁瑣的工作。
以例子進行說明
在當前目錄下的.c檔案中查詢字串"password"
grep "password" *.c
在當前目錄及其多個子目錄中查詢檔案test.c
find . -name "test.c" -print
在當前目錄及其多個子目錄中查詢.vbs檔案並刪除之
find . -name "*.vbs" -exec rm {} \;
在當前目錄及其多個子目錄下的.c檔案中查詢字串"password"
find . -name "*.c" -print | xargs grep "password"
在當前目錄下的.c檔案中把字串"password"替換成"pwd"
perl -pi -e 's/password/pwd/g' *.c
在當前目錄下的.c檔案中把字串"password"替換成"pwd"並以.bak副檔名備份
perl -pi.bak -e 's/password/pwd/g' *.c
在當前目錄及子目錄下的.c檔案中替換字串"password"為"pwd"
find . -name "*.c" -print | xargs perl -pi -e 's/password/pwd/g'
使用sed操作批量替換
格式: sed -i "s/查詢字段/替換字段/g" `grep 查詢字段 -rl 路徑`
linux sed 批量替換多個檔案中的字串
sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`
例如:替換/home下所有檔案中的www.viiving.com為www.zjant.com
在當前目錄下操作:sed -i "s/www.viiving.com/www.zjant.com/g" *
Linux 下批量替換檔案內容
通常在網路上可以找到的方法是 sed i s oldstring newstring g grep oldstring rl path 但是其中有太多的限制,比如 無法篩選哪些檔案是你不想要的,你只能替換所有grep出來的檔案,我在專案裡遇到的一種情況是,這樣的替換會同時影響到.svn檔案,導致up...
linux下批量替換檔案內容
1 網路上現成的資料 格式 sed i s 查詢字段 替換字段 g grep 查詢字段 rl 路徑 linux sed 批量替換多個檔案中的字串 sed i s oldstring newstring g grep oldstring rl yourdir 例如 替換 home下所有檔案中的www....
linux下批量替換檔案內容
1 網路上現成的資料 格式 sed i s 查詢字段 替換字段 g grep 查詢字段 rl 路徑 linux sed 批量替換多個檔案中的字串 sed i s oldstring newstring g grep oldstring rl yourdir 例如 替換 home下所有檔案中的www....