【问题标题】:Shell programming error [duplicate]Shell编程错误[重复]
【发布时间】:2015-08-11 22:44:16
【问题描述】:

我是 shell 编程新手,我应该这样做

  1. 在桌面创建两个目录 OS_filesR 和 OS_filesW
  2. 要求用户输入文件名。
  3. 使用在 OS_filesR 中输入的文件名创建文件,如果这是奇数创建和 删除可读权限。 如果这是偶数创建,请在 OS_filesW 中创建文件并删除可写文件 许可。
  4. 询问用户是否要创建另一个文件,如果是,重复步骤 (2, 3),如果不是 存在。

代码如下:

mkdir /home/karim/Desktop/OS_filesR /home/karim/Desktop/OS_filesW

counter=0

while(1)
do
        echo "Enter the file name"
        read var
        if[$counter % 2 -eq 0]
        then
                touch /home/karim/Desktop/OS_filesW/$var
                chmod -w $var
        else
                touch /home/karim/Desktop/OS_filesR/$var
                chmod -r $var
        fi
        echo "Do you want to create another file? Enter yes or no"
        read var2
        if[$var2 != "yes"]
        then
                break
        fi

        counter++
done

我不断收到此错误:

第 9 行:意外标记 then' line 9: then' 附近的语法错误

那么我该如何解决这个问题?

【问题讨论】:

标签: linux shell ubuntu terminal


【解决方案1】:

在第 9 行的“[”之后放置一个空格。“[”只是测试命令的别名,不会与没有空格的字符串的其余部分分开解析。

【讨论】:

  • 请投票结束明显重复的问题,而不是发布答案。
猜你喜欢
  • 2011-08-22
  • 1970-01-01
  • 2010-11-05
  • 1970-01-01
  • 1970-01-01
  • 2014-08-28
  • 2014-09-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多