我试图创建一个目录,如果它不存在,并且进一步在该行下创建该目录中的日志文件。这将是在当前用户的主目录
伪代码:Linux shell文件。 mkdir和pushd命令不做我想要的
If directory "/home/LOGS" does not exist
make directory "/home/LOGS"
然后只要创建一个日志文件,它会在该目录中保存,而不是程序是从运行的目录。
这是我迄今为止,它只是不工作...
pushd -n $"../LOGS" >/dev/null 2>&1
#Create the logs folder
if [ ! -d $"home/LOGS" ]; then
mkdir -p $"home/LOGS"
fi
如果有帮助,我的文件被保存,象这样:
function savefile {
# Save to file
if [ -e $username.log ]; then
echo "Username already exists, returning you to the menu."
sleep 2
clear
menu
else
echo $fullname >> $username.log
echo $password >> $username.log
curdate=$(date +'%d/%m/%Y %H:%M:%S')
echo $curdate >> $username.log
echo "Creating your account"
sleep 2
clear
echo "Account created"
echo
afterBasic
fi
}
任何帮助将不胜感激。
您是否认为在测试之前尝试“pushd”到目录中可能存在问题,以查看该目录是否实际存在? –
我以前试过把它放在后面。我现在再试一次。 – Badja
@DavidHoelzer:一般的好点;但请注意,即使按正确的顺序,当前目录中也不会有任何更改,因为正在使用“pushd -n”。 – mklement0