linux下批量修改檔案中的字元
以下所有檔案都包含字母justin,現在只要修改*.log,將其中的justin替換為myownstars
[oracle@db oracle]$ ls
2010091008.log 2010091217.log 2010091220.log 2010091223.log 2010091302.log 2010091305.log 2010091308.log 2010091311.log 2010091314.log crontab_rk.log sqlldr_track_info_filter.sh
2010091009.log 2010091218.log 2010091221.log 2010091300.log 2010091303.log 2010091306.log 2010091309.log 2010091312.log control.ctl date.sh sqlldr_track_info.sh
2010091216.log 2010091219.log 2010091222.log 2010091301.log 2010091304.log 2010091307.log 2010091310.log 2010091313.log control_filter.ctl source_file.bad
1、
使用perl命令
[oracle@db oracle]$ perl -p -i -e "s/justin/myownstars/g" /home/oracle/*.log
替換後檢驗,發現字尾為log的檔案都沒有了justin字元
[oracle@db oracle]$ find . -name '*' -print | xargs grep "justin"
./sqlldr_track_info.sh:folder=/home/oracle/justin/
./control.ctl:infile '/home/oracle/justin/source_file.csv'
./control.ctl:append into table temp_track_info_justin
./sqlldr_track_info_filter.sh:folder=/home/oracle/justin/
./control_filter.ctl:infile '/home/oracle/justin/source_file.csv'
./control_filter.ctl:append into table temp_track_info_justin
2、
使用sed
[oracle@db oracle]$ sed -i "s/justin/myownstars/g" `ls *.log`
[oracle@db oracle]$ find . -name '*' -print | xargs grep "justin"
./sqlldr_track_info.sh:folder=/home/oracle/justin/
./control.ctl:infile '/home/oracle/justin/source_file.csv'
./control.ctl:append into table temp_track_info_justin
./sqlldr_track_info_filter.sh:folder=/home/oracle/justin/
./control_filter.ctl:infile '/home/oracle/justin/source_file.csv'
./control_filter.ctl:append into table temp_track_info_justin
效果等同於1
以上都是替換單個單詞,當替換路徑時候,可以使用以下方式
perl -pi -e 's|/data/oracle/product|/home/oracle/product|g' /home/oracle/*
即可將/home/oracle下所有檔案中的/data/oracle/product替換為/home/oracle/product
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/15480802/viewspace-706799/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 批量修改檔名 與 批量檔案字元替換字元
- Linux下批量替換檔案中的字元 - sed (stream editor)Linux字元
- AIX/Linux下批量替換某類檔案中的某串字元AILinux字元
- linux下批量修改檔案及資料夾所Linux
- 批量修改檔案中的圖片名稱
- Linux 批量修改檔案字尾名Linux
- 批量修改檔案的編碼
- Linux 批量修改檔名Linux
- linux下rm命令刪除檔名中包含特殊字元的檔案Linux字元
- Linux下用字元表示的檔案型別Linux字元型別
- 使用vim修改linux中的檔案Linux
- Linux rename命令批量修改檔名Linux
- Linux下修改檔案建立時間(修改檔案更改時間)Linux
- Linux下批量將md檔案轉換為html檔案LinuxHTML
- perl命令:批量修改替換檔案
- find命令批量修改檔案字尾
- linux shell 命令下批量新增檔案的字尾 和批量刪除 擁有某字尾的檔案Linux
- Linux下批量刪除空檔案或者刪除指定大小的檔案Linux
- linux|批量建立檔案、資料夾或刪除——萬用字元Linux字元
- 批量修改檔名
- node實現檔案屬性批量修改(檔名)
- Python批量修改檔名和檔案型別Python型別
- linux下批量刪除find出來的某類檔案Linux
- Ubuntu下修改hosts檔案中的域名對映Ubuntu
- linux 批量修改檔名字尾名命令renameLinux
- Linux批量刪除檔案Linux
- 批量刪除檔案中的^M
- Linux下刪除亂碼或特殊字元檔案Linux字元
- java批量修改檔名Java
- java上傳檔案跟批量下載檔案Java
- Linux中修改開啟檔案的數量限制Linux
- win10批量修改檔名的步驟_win10如何批量修改檔名Win10
- win10如何批量檔案字尾修改_win10怎麼批量修改字尾Win10
- linux 模糊批量刪除檔案Linux
- linux 檔案批量重新命名Linux
- linux下批量修改使用者密碼Linux密碼
- Linux下計算字元在檔案裡出現的次數Linux字元
- Unix 下批量解壓zip檔案