簡體   English   中英

重命名 linux function 未按預期工作

[英]The rename linux function not working as expected

我正在嘗試通過刪除“tmp”來重命名文件列表。 細繩

例如1.tmp.tax.html將變為1.tax.html

(base) [david@archlinux ~]$ ls -ltr test/
total 684
-rw------- 1 david users 229779 Nov  7 11:43 1.tmp.tax.html
-rw------- 1 david users 229779 Nov  7 11:43 2.tmp.tax.html
-rw------- 1 david users 229779 Nov  7 11:43 3.tmp.tax.html


rename 's/tax.//' test/*.html

沒有 output 消息,沒有重命名。 怎么了???

(base) [david@archlinux ~]$ rename --version
rename from util-linux 2.34

(base) [david@archlinux ~]$ uname -a
Linux archlinux 5.3.7-arch1-2-ARCH #1 SMP PREEMPT @1572002934 x86_64 GNU/Linux

rename from util-linux 不使用正則表達式替換。

$ rename -h

Usage:
 rename [options] <expression> <replacement> <file>...

所以,在你的情況下,

rename .tmp. . test/*.html

順便說一句,當使用其他重命名時,請注意. 在正則表達式中是特殊的(它匹配除換行符以外的任何字符)。 因此,您的命令也會從文件名中刪除例如taxi

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM