重击-中断用户输入的while循环

时间:2018-11-25 20:59:46

标签: linux bash

我是Linux的入门者。

我发现我的问题可能已经解决,但是我无法将答案转移到我的示例中。

我正在尝试编写脚本,要求用户提供文件夹名称,然后创建目录。之后,bash询问用户是否要创建下一个文件夹,如果答案与是不同,则循环应该中断。

我非常感谢您的帮助。 先感谢您。 我的代码:https://pastebin.com/xKNgV9gg

#!/bin/bash
echo 'Welcome in folder generator'
echo '#################################################'
echo '#################################################'

new_directory="yes"

while [ "$new_directory"=="yes" ]
do
    echo 'Give me folder name'
    read folderName
    mkdir $folderName
    echo "Would you like to create next folder ?"
    read $new_directory
done

1 个答案:

答案 0 :(得分:-1)

  1. 分隔符由空格(空格,制表符,换行符)分隔。
  2. [ a = b ]不等于[ a=b ]。第一个将字符串'a'与字符串'b'进行比较,第二个检查字符串'a=b'是否具有非零长度。
  3. 始终引用变量,除非您知道不必这样做。
  4. Bash使用单个=进行字符串比较。支持双==,但不是标准的。
  5. in this thread是很好的读物。

#!/bin/bash
echo 'Welcome in folder generator'
echo '#################################################'
echo '#################################################'

new_directory="yes"

while [ "$new_directory" == "yes" ]
do
    echo 'Give me folder name'
    read folderName
    mkdir "$folderName"
    echo "Would you like to create next folder ?"
    read new_directory
done