#遞歸查找文件
find . -type f -name "*.c"
#替換當前目錄及子目錄下所有文件中的TAB字符爲4個空格
# xargs -0 : 轉義參數中的特殊字符
find . -type -f -print | xargs -0 sed -i "s/\t/ /g"
# xargs -I file 給參數取別名
find . -type -f -print | xargs -0 -I file sed -i "s/\t/ /g"file
#批量重命名文件,將bsp開頭的文件名改爲ft_cpu開頭的文件名
for f in *.c; do mv "$f" $(echo "$f" | sed 's/^bsp/ft_cpu/g'); done
#查找git衝突文件,全部替換爲遠端庫版本
egrep -rl "<<<<<<<" | xargs -0 git checkout --theirs
----------------------------------------------------正則表達式---------------------------------------
按行匹配,提取匹配項:
(?-s).*?Video\((\S+)\).*\R
/**
* 說明:
* (?-s) :關閉single-line(DOTALL)模式, DOT不能匹配換行符。
* \R : 匹配換行符
* 示例: Line 184: <a href="http://www.youtube.com/watch?v=zLP_X4wyHbY" title=" Video (zLP_X4wyHbY)"><div class="youtube_icon"> Video
*/