我的目录中有很多文件夹,其中一些以字符 开头'
。我想删除这些。
示例文件夹
- 文件夹.A
- 'Folder.B' <-- 想要删除这个
- 'Folder.C' <-- 想要删除这个
- 文件夹.D
我可以通过键入来获得构建字符串的帮助echo 'My.Folder
,并通过按 Tab 键打印整个名称echo 'My.Folder.With.Full.Path'
。然而。如果我开始输入echo '*
并按 Enter 键,我会收到某种以 开头的输入提示>
。
运行:Ubuntu 18.04.3 LTS 4.15.0-51-generic
答案1
ls -Q
问题注释中提到的和结果ls -N
表明单引号实际上并不是文件夹名称的一部分,而是由执行列表的程序添加的,因为名称中显然有一个被认为有些特殊的字符。
也可以看看这个问题更深入地解释正在发生的事情。简而言之,coreutils
开发人员决定ls
默认开始引用包含特殊字符的文件名。
该>
提示是无关的:它出现是因为您在按 时出现了不平衡的引号Enter。 shell 假定您尚未完成命令行操作,并提示您编写引用部分的其余部分。如果执行此操作,引用的部分现在将在其中包含实际的换行符。