无法使用波浪号创建目录

时间:2014-01-02 03:03:02

标签: bash mkdir tilde tilde-expansion

鉴于此脚本

# cat foo.sh
echo $HOME
set -x
mkdir ~

我收到了这个结果

# ./foo.sh
/home/Steven Penny
++ mkdir ''
mkdir: cannot create directory `': No such file or directory

如果我运行mkdir "$HOME"我没有问题。我认为问题在于路径上的空间,但有人可以对此有所了解吗?

2 个答案:

答案 0 :(得分:0)

问题是/etc/passwd文件丢失了。

详细说明,即便是一个这样简单的工作

Steven Penny::0:0::/home/Steven Penny

答案 1 :(得分:0)

查看调试输出

++ mkdir ''

看起来像"〜" in mkdir ~正在扩展为空,从而导致mkdir失败。由于mkdir $HOME工作正常,这意味着您在磁盘中有足够的空间。

您可以查看echo ~是否显示您的主目录。