
[英]Need to move file names in a directory with path to a file using unix script
[英]I need to test for a directory in unix
我正在制作一个简单的shell脚本,我需要测试一个目录(如果存在),删除它并创建一个新目录,如果不存在,则创建它。
这是我到目前为止所拥有的:
if ( ! -d /numbers ); then
echo "does not exist, creating directory"
sleep 3s
mkdir numbers
echo "Directory created."
else
echo "Removing existing directory and creating a new one"
sleep 2s
rmdir numbers
echo "directory removed"
sleep 1s
mkdir numbers
echo "Directory created"
fi
但这给我一个错误信息:
myscript.sh: line 17: -d: command not found
以及目录是否存在:
mkdir: cannot create directory `numbers': File exists
您需要在if语句中使用方括号进行测试。 您还使用了rmdir,它仅在目录为空时才起作用。 如果要删除它及其内容,请使用rm -r numbers
。
也许是这样的:
if [ ! -d numbers ]; then
echo "does not exist, creating directory"
sleep 3s
mkdir numbers
echo "Directory created."
else
echo "Removing existing directory and creating a new one"
sleep 2s
rm -r numbers
echo "directory removed"
sleep 1s
mkdir numbers
echo "Directory created"
fi
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.