2014-01-02 7 views
0

Учитывая этот сценарийНевозможно создать каталог с тильдой

# 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" у меня нет проблем. Я думаю, что проблема заключается в пространстве на пути, но может ли кто-то пролить свет на это?

ответ

0

Проблема была в том, что файл /etc/passwd отсутствовал.

Разрабатывать, даже один этот простой будет работать

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

Глядя на ваш отладочной

++ mkdir '' 

выглядит как «~» в mkdir ~ расширяется ничего, тем самым вызывая MKDIR потерпеть неудачу. Поскольку mkdir $HOME отлично работает, значит, на диске достаточно места.

Вы можете проверить, отображается ли echo ~ ваш домашний каталог.