當(dāng)前位置:
首頁(yè) >
Ubuntu 重命名文件
發(fā)布時(shí)間:2023/12/20
53
豆豆
生活随笔
收集整理的這篇文章主要介紹了
Ubuntu 重命名文件
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在linux下修改文件的名字有很多種方法,常用的有mv和rename。
一,mv
mv fromfile tofile
如把文件a.txt得命名為b.txt,可以是mv a.txt b.txt。
mv一次只能重命名一個(gè)文件,而且,它是移動(dòng)命令。如果tofile已經(jīng)存在的話,會(huì)直接裝原文件覆蓋,從而造成文件的丟失。當(dāng)然有選項(xiàng)可以對(duì)已存在的文件進(jìn)行提示,還是決定看看rename吧。
例子:將目錄A重命名為B
mv A B
例子:將/a目錄移動(dòng)到/b下,并重命名為c
mv /a /b/c
二 rename
本文介紹rename命令完成重命名批量文件語(yǔ)法,介紹了rename用到的Perl的替換和轉(zhuǎn)化形式,并給出常用正規(guī)表達(dá)式。最后給出幾個(gè)實(shí)例。
偶爾會(huì)遇到需要重命名批量文件,最典型的例子就是數(shù)碼相機(jī)的相片,在Ubuntu可以用工具Purrr或者PerfixSuffix實(shí)現(xiàn)該功能,但重命名批量文件并不常用,為了偶爾的一次操作,安裝工具(可能通過(guò)Ubuntu Software Center或者sudo apt-get install安裝),加之圖形化界面操作也比較費(fèi)時(shí)間。事實(shí)上,rename命令就可以出色完成該工作。 一、rename命令 Linux的 rename 命令有兩個(gè)版本(C語(yǔ)言和Perl語(yǔ)言),早期的Linux發(fā)行版基本上使用的是C語(yǔ)言版本,現(xiàn)在系統(tǒng)幾乎都是Perl語(yǔ)言版本了(支持正則處理,功能更強(qiáng)大)[1]。可以通過(guò)命令man rename打開rename幫助文檔查看版本,如果第一行內(nèi)容如下,則是Perl語(yǔ)言版本。
先舉個(gè)例子來(lái)感受下,比如將當(dāng)前目錄下所有*.nc文件中Sam3替換成Stm32,命令如下:
二、Perl正則表達(dá)式 2.1 三種形式[2] 匹配:m/<regexp>/? (可以省略m,直接寫成/regexp/) 替換:s/<pattern>/<replacement>/? 轉(zhuǎn)化:tr/<pattern>/<replacement>/ 博文[3]給出了8種模式,rename命令常用到替換和轉(zhuǎn)化兩種(用匹配也沒意義)。轉(zhuǎn)換跟替換不同,替換是將replacement整個(gè)字符串替換pattern字符串,而轉(zhuǎn)換則是用replacement逐個(gè)字符替換pattern逐個(gè)字符,結(jié)果依賴于replacement與pattern字符個(gè)數(shù)(見下述分析)。 (1)替換 替換表達(dá)方式如下[3],還有一系列參數(shù),貌似不怎么用得著。
2.2 常用模式 正則表達(dá)式中的一些常用模式pattern[2]: x? 匹配 0 次或一次 x 字符串 x* 匹配 0 次或多次 x 字符串,但匹配可能的最少次數(shù) x+ 匹配 1 次或多次 x 字符串,但匹配可能的最少次數(shù) .* 匹配 0 次或一次的任何字符 .+ 匹配 1 次或多次的任何字符 {m} 匹配剛好是 m 個(gè) 的指定字符串 {m,n}匹配在 m個(gè) 以上 n個(gè) 以下 的指定字符串 {m,} 匹配 m個(gè) 以上 的指定字符串 [] 匹配符合 [] 內(nèi)的字符 [^] 匹配不符合 [] 內(nèi)的字符 [0-9]匹配所有數(shù)字字符 [a-z]匹配所有小寫字母字符 [^0-9]匹配所有非數(shù)字字符 [^a-z]匹配所有非小寫字母字符 ^ 匹配字符開頭的字符 $ 匹配字符結(jié)尾的字符 \d 匹配一個(gè)數(shù)字的字符,和 [0-9] 語(yǔ)法一樣 \d+ 匹配多個(gè)數(shù)字字符串,和 [0-9]+ 語(yǔ)法一樣 \D 非數(shù)字,其他同 \d \D+ 非數(shù)字,其他同 \d+ \w 英文字母或數(shù)字的字符串,和 [a-zA-Z0-9] 語(yǔ)法一樣 \w+ 和 [a-zA-Z0-9]+ 語(yǔ)法一樣 \W 非英文字母或數(shù)字的字符串,和 [^a-zA-Z0-9] 語(yǔ)法一樣 \W+ ? 和 [^a-zA-Z0-9]+ 語(yǔ)法一樣 \s ? ?空格,和 [\n\t\r\f] 語(yǔ)法一樣 \s+ ? 和 [\n\t\r\f]+ 一樣 \S ? ?非空格,和 [^\n\t\r\f] 語(yǔ)法一樣 \S+ ? 和 [^\n\t\r\f]+ 語(yǔ)法一樣 \b ? ?匹配以英文字母,數(shù)字為邊界的字符串 \B ? ?匹配不以英文字母,數(shù)值為邊界的字符串 a|b|c 匹配符合a字符 或是b字符 或是c字符 的字符串 abc ? 匹配含有 abc 的字符串
三、實(shí)例 3.1?將所有*.nc文件中Sam3替換成Stm32
總結(jié)
以上是生活随笔為你收集整理的Ubuntu 重命名文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: BIM模型文件下载——某公司办公综合楼项
- 下一篇: Ubuntu 切换谷歌拼音