文件夾中有一個文件夾,其中附有日期和時間。我想將其重命名爲其他內容,以便我可以輕鬆訪問它。我知道這個文件名的起始字。他們有沒有辦法我可以重命名這個(使用通配符或其他)? 。由於我正在嘗試編寫腳本來自動化某些內容,因此無法使用Tab。在linux中重命名附加日期的文件
此外,我想訪問lexicographical的最後一個元素,並重命名它,如果有多個文件。
文件夾中有一個文件夾,其中附有日期和時間。我想將其重命名爲其他內容,以便我可以輕鬆訪問它。我知道這個文件名的起始字。他們有沒有辦法我可以重命名這個(使用通配符或其他)? 。由於我正在嘗試編寫腳本來自動化某些內容,因此無法使用Tab。在linux中重命名附加日期的文件
此外,我想訪問lexicographical的最後一個元素,並重命名它,如果有多個文件。
你想找到最近修改的文件在目錄中?哪一個匹配模式?
find . -maxdepth 1 -mindepth 1 -type f -name "prefix*" \
-printf "%TY%Tm%TdTH%TM %p\n" | sort -nr | read -r _ file
printf "%s" "$file"
假設沒有包含換行符的文件名。而且你實際上只想獲取目錄中最後一次更改的文件。
替代你可以排序做這樣的事情:
find . -maxdepth 1 -mindepth 1 -type f -name "prefix*" | sort -nr -t- -k2
這將這樣的文件排序:
prefix-2016-05-05
prefix-2016-06-05
prefix-2016-04-08
要
prefix-2016-06-05
prefix-2016-05-05
prefix-2016-04-08
假設該文件的名稱是bob_2016-06-10_06:00:00.txt
你可以這樣做:
mv *_20[0-9][0-9]-[01][0-9]-[0-3][0-9]_[0-2][0-9]:[0-5][0-9]:[0-5][0-9].txt commmonname.txt
嗨邁克爾, 已添加一些問題的詳細信息。如果文件夾中有多個文件,我想訪問詞典的最後一個元素。 –
可以使用用正則表達式重命名。語法是:
Usage: rename [-v] [-n] [-f] perlexpr [filenames]
因此,考慮以下文件:
[email protected]:/tmp/kk$ ls -l
total 0
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 aaaa-2016-01-01.txt
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 aaaa-2016-01-02.txt
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 aaaa-2016-01-03.txt
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 aaaa-2016-01-04.txt
可以重命名他們這樣說:
[email protected]:/tmp/kk$ rename -v 's/aaaa/xxxx/' *.txt
aaaa-2016-01-01.txt renamed as xxxx-2016-01-01.txt
aaaa-2016-01-02.txt renamed as xxxx-2016-01-02.txt
aaaa-2016-01-03.txt renamed as xxxx-2016-01-03.txt
aaaa-2016-01-04.txt renamed as xxxx-2016-01-04.txt
如果你想跟蹤辭書最後一個元素,我會在腳本中使用類似這樣的內容:
ln -sf `ls | tail -n1` latest
由於LS排序按名稱按默認情況下,你將永遠有一個鏈接到您的辭書的最後一個元素:
[email protected]:/tmp/kk$ ls -lrt
total 0
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 xxxx-2016-01-01.txt
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 xxxx-2016-01-02.txt
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 xxxx-2016-01-03.txt
-rw-rw-r-- 1 coda coda 0 Jun 10 13:28 xxxx-2016-01-04.txt
lrwxrwxrwx 1 coda coda 19 Jun 10 13:59 latest -> xxxx-2016-01-04.txt
請注意,這不要與'util-linux'中的'rename'混淆。這個命令有時也被稱爲'perl-rename' – andlrc
我增加了一些問題的細節。如果有多個文件,是否有一種方法可以訪問詞典的最後一個文件 –
你可以考慮軟鏈接到它,而不是重命名它。 –
您可以像在OP中所說的那樣發佈開始名稱,並且您希望將其重命名爲(以及)還有日期格式? – Inian
假設它是Abc_10Jun2016_04_02_14,我想將它重命名爲Abc_latest。已添加一些問題的更多細節。 –