繁体   English   中英

在Linux中重命名文件/目录名称

[英]Rename file/directory name in linux

如何通过Linux命令行用自定义名称替换以下文件名(Windows支持的格式)。 下面只是一个示例案例。 我的测试目录中有100多个文件,因此我需要一种自动方式,而不是为每个文件手动输入“ mv”命令。

C:\Users\admin\Desktop\PCAP_Storage\TROJAN_MISC_ZEUS-DERIVATIVE
to 
TROJAN_MISC_ZEUS-DERIVATIVE

我尝试了一种方法,导致错误

test@localhost:~$ rename 's/C:\Users\admin\Desktop\PCAP_Storage\//g' C:\Users\admin\Desktop\PCAP_Storage\TROJAN_MISC_ZEUS-DERIVATIVE
Substitution pattern not terminated at (user-supplied code).

也尝试忽略特殊字符。

test@localhost:~$ rename 's/C:\\Users\\admin\\Desktop\\PCAP_Storage\\/' C:\Users\admin\Desktop\PCAP_Storage\TROJAN_MISC_ZEUS-DERIVATIVE
Substitution replacement not terminated at (user-supplied code).

如果您只想删除上一个反斜杠之前的所有内容,则可以使用

rename 's/^.*\\//s' *

您尝试的问题是替换命令具有3个参数:

s/PATTERN/REPLACEMENT/FLAGS

PATTERN,REPLACEMENT或FLAGS中的任何一个都可以为空,但是所有斜杠(或您使用的任何定界符)都是必需的。

s/C:\Users\admin\Desktop\PCAP_Storage\//g

最后一个\\转义以下/ (并且\\U将以下字符串大写, \\a是“哔”声警报, \\D\\P不代表任何含义),因此您有一个模式

C:SERS\x07DMINDESKTOPPCAP_STORAGE/

和替换部分

g

并且最后一个/丢失,导致语法错误。

你第二次尝试

s/C:\\Users\\admin\\Desktop\\PCAP_Storage\\/

解决这些问题。 现在,所有反斜杠均已正确转义,但最后一个/仍然丢失。 因此,该消息抱怨替换零件丢失/终止。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM