1.批量改名采用命令rename
創(chuàng)新互聯(lián)是工信部頒發(fā)資質(zhì)IDC服務(wù)器商,為用戶提供優(yōu)質(zhì)的雅安服務(wù)器托管服務(wù)
rename 語法:
rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
-v表示顯示詳細(xì)信息,-n表示不實(shí)際執(zhí)行替換,只是看哪些文件會(huì)受影響。 -f 表示強(qiáng)制,不管是否有重名。
perlexpr是perl語法的表達(dá)式, files則是匹配項(xiàng)。因此,該命令執(zhí)行結(jié)果與perlexpr有關(guān),不一定就是改文件名。
實(shí)例: 將所有文件名*.html 改為對(duì)應(yīng)的.htm
rename 's//.html$//.htm$/' *.html
去bak后綴
rename 's//.bak$//' *.bak
將文件名大寫改為小寫
rename 'y/A-Z/a-z/' *
但rename不能遞歸修改。
2.遞歸改名,用find+rename
將文件名的abc改為xyz
find . -name "abc*" -exec rename 's/abc/xyz/' {} /;
該命令可以將當(dāng)前目錄下所有子目錄的文件都改名。
3.內(nèi)容替換,用find+sed
將所有ablo 替換為ablozhou
find . -type f -exec sed -i -e "s/ablo/ablozhou/g" {} /;
sed 命令 -i 表示 --in-place,文件原地替換。-e 后跟替換表達(dá)式
可以這樣做:
方法1:sed -i 's/被替換的內(nèi)容/要替換成的內(nèi)容/' file
方法2:sed 's/被替換的內(nèi)容/要替換成的內(nèi)容/g' file file.out;mv file.out file。
擴(kuò)展資料:
Shell編程的常用技巧:
一、自動(dòng)補(bǔ)齊:在linux中對(duì)于命令或路徑,可以TAB鍵進(jìn)行自動(dòng)補(bǔ)全,以下事項(xiàng)需要注意:
1、只存在一個(gè)該輸入字符開頭的命令或路徑,此時(shí)自動(dòng)補(bǔ)全;
2、存在多個(gè)該輸入字符開頭的命令或路徑,此時(shí)第一次點(diǎn)擊TAB鍵無效,此時(shí)再次點(diǎn)擊TAB會(huì)羅列出所有該字符開頭的命令或路徑,繼續(xù)輸入直到僅僅剩一個(gè)時(shí)自動(dòng)補(bǔ)全;
3、如果命令已經(jīng)是完整的,TAB鍵則是本來的移動(dòng)功能;而路徑的話要看命令自身的行為決定后續(xù)動(dòng)作。
二、歷史命令
1、history命令可以顯示歷史執(zhí)行過的命令;
2、使用!+序號(hào)執(zhí)行該序號(hào)對(duì)應(yīng)的命令;
3、使用!+字符執(zhí)行該字符開頭的最后一次執(zhí)行的指令。
三、命令別名
1、實(shí)現(xiàn)別名:alias ddd="df -Th";
2、刪除別名:unalias ddd;
3、顯示所有別名命令列表:alias;
4、存放位置:~/.bashrc? (加入該文件后,重啟后不會(huì)消失)。
四、重定向
1、重定向標(biāo)準(zhǔn)輸入: 命令接收輸入的途徑由鍵盤改為文件;
2、重定向標(biāo)準(zhǔn)輸出: 將命令的執(zhí)行結(jié)果輸出到指定文件,而不是直接顯示到屏幕;
3、重定向標(biāo)準(zhǔn)輸出: 將命令的執(zhí)行結(jié)果追加輸出到指定文件;
4、重定向標(biāo)準(zhǔn)錯(cuò)誤:2 清除指定文件的內(nèi)容,并把標(biāo)準(zhǔn)錯(cuò)誤信息保存到指定文件;
5、重定向標(biāo)準(zhǔn)錯(cuò)誤:2 標(biāo)準(zhǔn)錯(cuò)誤信息追加到指定文件;
6、重定向標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤:? 將標(biāo)準(zhǔn)輸出、標(biāo)準(zhǔn)錯(cuò)誤信息全部保存到指定文件,而不是直接顯示在屏幕上。
1、這么就用不會(huì)提示了:#
\cp
-rf
2、
原因:
#
vi
~/.bashrc
如果你看到如下內(nèi)容,以下命令都會(huì)用別名執(zhí)行了,就是說自動(dòng)加了
-i
參數(shù):
alias
rm='rm
-i'
alias
cp='cp
-i'
alias
mv='mv
-i'
為了讓復(fù)制和移動(dòng)大量文件去覆蓋目標(biāo)時(shí),不會(huì)產(chǎn)生一個(gè)個(gè)的提示,命令應(yīng)該這樣寫
#
\cp
-rf
/data/xxx*
/home/xxx
注意
cp
命令前加了
\
,意思是不讓它用~/.bashrc里的別名運(yùn)行,即
-i
參數(shù)
3、補(bǔ)充cp該命令的各選項(xiàng)含義如下
-
a
該選項(xiàng)通常在拷貝目錄時(shí)使用。它保留鏈接、文件屬性,并遞歸地拷貝目錄,其作用等于dpR選項(xiàng)的組合。
-
d
拷貝時(shí)保留鏈接。
-
f
刪除已經(jīng)存在的目標(biāo)文件而不提示。
-
i
和f選項(xiàng)相反,在覆蓋目標(biāo)文件之前將給出提示要求用戶確認(rèn)?;卮饄時(shí)目標(biāo)文件將被覆蓋,是交互式拷貝。
-
p
此時(shí)cp除復(fù)制源文件的內(nèi)容外,還將把其修改時(shí)間和訪問權(quán)限也復(fù)制到新文件中。
-
r
若給出的源文件是一目錄文件,此時(shí)cp將遞歸復(fù)制該目錄下所有的子目錄和文件。此時(shí)目標(biāo)文件必須為一個(gè)目錄名。
-
l
不作拷貝,只是鏈接文件。
4、需要說明的是,為防止用戶在不經(jīng)意的情況下用cp命令破壞另一個(gè)文件,如用戶指定的目標(biāo)文件名是一個(gè)已存在的文件名,用cp命令拷貝文件后,這個(gè)文件就會(huì)被新拷貝的源文件覆蓋,因此,建議用戶在使用cp命令拷貝文件時(shí),最好使用i選項(xiàng)。
通過你的描述,替換命令如下:
1、tr 命令來進(jìn)行替換
[root@localhost ss1]# tr '111' '2222222' aa.txt
2、sed 命令
[root@localhost ss1]# sed ‘s/wyf/wzw/g’ ./person.txt
這里使用sed 內(nèi)置命令s 來實(shí)現(xiàn)替換功能,并且使用了全局替換標(biāo)志g 表示替換文件中匹配wyf的所有字符串。
溫馨提示:
1、tr 命令在接文件時(shí)比較特殊,需要輸入重定向符號(hào) “”
2、凡是在文本中出現(xiàn)的“111”均應(yīng)轉(zhuǎn)換成“222222”,而不是僅僅將單個(gè)進(jìn)行轉(zhuǎn)換,這個(gè)要注意。
3、在使用sed 命令時(shí),要注意一下語法格式,將要替換的文本“wyf”放在第一個(gè)和第二個(gè)“/” 之間,將替換后的文本“wzw”放到第二個(gè)和第三個(gè)“/” 之間。這個(gè)要注意。
以上就是我的回答,在具體操作時(shí),可能會(huì)有出入,如有問題可??私信?+?關(guān)注,我會(huì)第一時(shí)間來進(jìn)行回復(fù)追答,希望我的回答能幫到你。
linux需要修改文件名的時(shí)候該操作。
工具/原料:xshell、linux系統(tǒng)、本地設(shè)置1.0
1、打開xshell軟件連接上linux服務(wù)器。
2、使用指令【touch文件名】創(chuàng)建一個(gè)空文件。
3、指令【ls -l】查看新創(chuàng)建的文件。
4、接著使用指令【mv舊文件名新文件名】修改文件名。
5、再次使用【ls -l】可以看到文件名已經(jīng)被修改成功了。mv修改文件名的時(shí)候,新文件名要跟舊文件名在同一個(gè)目錄下。
可以使用 Linux 系統(tǒng)的拷貝命令 cp,對(duì)原來的文件進(jìn)行替換。例如:
$cp newfile oldfile
該命令的作用就是使用現(xiàn)在 newfile 的內(nèi)容,替換掉原來 oldfile 的內(nèi)容。
當(dāng)前文章:linux用命令替換文件,Linux替換文件
文章地址:http://jinyejixie.com/article48/hojphp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、搜索引擎優(yōu)化、品牌網(wǎng)站設(shè)計(jì)、、動(dòng)態(tài)網(wǎng)站、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)