我正在努力学习bash。在一些教程中,我找到了select循环。但它不适用于我的MAC OS或Linux。我的代码是这样的:
double *
我使用./test.sh来调用此程序,结果如下:
#!/bin/bash
names="Kyle Cartman Stan Quit"
PS3="Select character: "
select name in $names
do
echo "name="$name
done
似乎无法检测到我的输入。 有谁可以帮助我?
答案 0 :(得分:3)
代码很好;它的用法是错误的:允许的条目是config.conversation.historyService.activityItems.added(function(newMsg) {
if(typeof newMsg.direction != 'function') {} else {
if(newMsg.direction() == 'Incoming') {
direction = "black";
} else if(newMsg.direction() == 'Outgoing' && newMsg.status() === "Succeeded") {
direction = "green";
} else {}
$("#conversationText").append('<br/><div class="chat-user-info"><h1 class="chat-user-name">' + newMsg.sender.displayName() + '</h1><h2 class="chat-user-time">' + new Date() + '</h2></div><div class="chat-user-message"><h3 style="color:' + direction + ';">' + newMsg.text() + '</h3></div><br/>');
}
});
,1
,2
或3
,而不是4
,Kyle
,{{1} },或Cartman
。 (如果用户必须输入整个名称,那么将数字放入是什么意思?)
空字符串告诉您用户输入的内容无效。相反,观察:
Stan
顺便说一下 - 它应该是:
Quit
...或...
1) Kyle
2) Cartman
3) Stan
4) Quit
Select character: 1
name=Kyle
Select character: 3
name=Stan
...不...
# SAFE: quotes everything
echo "name=$name"
请参阅Wooledge wiki上的When Should You Quote?,或养成通过http://shellcheck.net/运行代码的习惯,这会发现这种问题。