shell 为什么我在访问Bash代码的文件时出错

sr4lhrrt  于 2023-08-07  发布在  Shell
关注(0)|答案(1)|浏览(109)

我想做一个游戏,只是花一些时间来提高我的编程技能。我遇到了一个错误,我尝试了所有的方法来修复它,是否有任何解决方案?这是密码

random=$((1 + $RANDOM % 10))
read -p "Enter A UserName" name
if [ -d $name ]
then
    cd $name
    if [ -d Scores ]
    then
        cd Scores
        else
                mkdir Scores
                cd Scores
                cd ../../
    fi
else
    mkdir $name
    cd $name
    mkdir Scores
    cd Scores
    cd ../../
fi
echo 'enter a random number'
read -p "Enter" r
if [ $r = $random ]
then
        echo 'great' $name
else
        echo 'nope' $name 'the number was' $random
fi

echo 'want to play again(y for play again n for dont play again)'
read m
if [ $m = y ]
then
        chmod +x AnswerDebug.sh
    bash AnswerDebug.sh
elif [ $m = n ]
then
        echo 'end of game'
else
echo 'not an input' $name
fi

字符串
输出为:The Output
我编了个游戏我们要找到一个随机数。我试着做一个评分系统,但它是未完成的
我希望它能很好地工作,但由于某种原因,代码无法工作。代码无法访问AnswerDebug.sh(文件名)

vsaztqbk

vsaztqbk1#

所有这些

if [ -d $name ]
then
    cd $name
    if [ -d Scores ]
    then
        cd Scores      # <<< missing cd ../.., but why are you changing directories?
        else
                mkdir Scores
                cd Scores
                cd ../../
    fi
else
    mkdir $name
    cd $name
    mkdir Scores
    cd Scores
    cd ../../
fi

字符串
可由一个命令替换

mkdir -p "$name/Scores"

相关问题