我正在尝试清理 Linux NAS 上的一些文件。它们是几年前从旧存储转移过来的,现在文件和文件夹在文件\文件夹名称的开头和结尾处包含换行符“\n”。
如果我查看它们“ls -lab”,我会得到如下所示的内容:
\n Folder_Name \n
一篇类似的文章帮助我删除了文件名开头的“\n”,但末尾的“\n”仍然存在。
(rename $'\n' '' *)
答案1
您的系统rename
似乎是 util-linux 变体1 - 在这种情况下,您可以再次运行相同的命令来删除第二个换行符,例如:
$ ls -Q
"\nfile name\n"
$ rename.ul $'\n' '' *
$ ls -Q
"file name\n"
$ rename.ul $'\n' '' *
$ ls -Q
"file name"
答案2
您可以mv
像往常一样只使用文件,只需将文件名放在引号中并按回车键即可。所以:
$ ls -b
file\n
$ mv "file
> " file
$ ls -b
file
这应该对你有用,它过去对我有用。它也适用于原始情况,您只需要在文件名之前返回即可。
欢迎来到 Unix StackExchange!