为什么会出现拖尾?'在Unix的目录末尾?

时间:2018-06-04 21:24:27

标签: unix

我在Unix中使用以下命令创建目录。这一行是我试图运行的shell脚本的一部分。

mkdir ./R

它创建了一个名为R?的目录 这是什么意思?

2 个答案:

答案 0 :(得分:2)

假设您正在使用ls查看此?符号,man ls请注意--hide-control-chars会在文件名中包含?个符号非图形字符。假设设置了此标志(例如,如果您有别名alias ls=ls -qmkdir命令可能在R之后有一个额外的非打印字符(例如,如果您复制) - 从某处偷走了这条线。)

答案 1 :(得分:1)

您的shell脚本有DOS行结尾。 shell将命令视为mkdir ./R^M,其中^M是回车符。您可以使用cat -v确认这一点。

$ cat -v script
mkdir ./R^M

ls会打印带有问号?的控制字符。直接打印它们会弄乱它的输出。

修复文件convert it from DOS to UNIX format