在Linux系统中,一个有问题的脚本会在文件夹名称结尾处添加字符“^M”。使用“ls -al”命令可以将 "^M" 移动到问号所在位置。
但是,输入问号进行搜索无法起到与 "^M" 相同的作用。
如何删除这些文件夹呢?
在Linux系统中,一个有问题的脚本会在文件夹名称结尾处添加字符“^M”。使用“ls -al”命令可以将 "^M" 移动到问号所在位置。
但是,输入问号进行搜索无法起到与 "^M" 相同的作用。
如何删除这些文件夹呢?
\r
来指定^M
或回车字符。$
和单引号组成:$'a c-style string'
找出出错的目录:find . -type d -name $'*\r'
ls -d *$'\r'
通过删除尾随的CR(回车符),将错误的目录重命名。
find . -type d -name $'*\r' -execdir sh -c $'for d; do mv -- "$d" "${d%\r}"; done' _ {} +
删除当前目录中的命名错误的目录及其内容:
rm -r -- *$'\r'
rmdir *$'\r'
命令将有效。 - undefined