【发布时间】:2014-01-08 15:08:50
【问题描述】:
在 Debian 上,以下代码可以运行,但在 CentOS 上它只是中止而没有任何错误。错误是什么?看不懂。
echo "Test 1"
ANSWER=""
read -p "Enter y or n " ANSWER;
echo "Test 2"
输出看起来总是这样:
Test 1
我也尝试了不带参数-p的读取命令,但这也不起作用:
echo "Test 1"
ANSWER=""
echo "Enter y or n "
read ANSWER;
echo "Test 2"
输出:
Test 1
Enter y or n
如果我在命令行执行命令,它是否工作,它应该如何工作。该脚本具有以下“标题”:#!/bin/bash
有人可以帮忙吗?
【问题讨论】:
-
type read的输出是什么? -
@anubhava "read is a shell builtin" - 在两个系统上
-
它是中止回你的shell,还是在等待输入?这可能是一个缓冲问题。
-
您使用哪个 shell 来执行脚本?将 hashbang 放在开头以确保您使用的是 bash
#!/bin/bash -
@Donovan 它中止返回我的外壳。它不等待任何输入。