gpt4 book ai didi

Linux 脚本,提示/读取 + 字符串相等运算符 + 正则表达式

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:53:59 24 4
gpt4 key购买 nike

这是一个简单的问题,我整个周末都在苦苦思索。我想提示用户键入 [TtMm],如果他/她不键入,则再次提示。解释器发现了一些我不理解的语法错误。

谢谢,

#!/bin/bash

use_selection=H
while [ $use_selection != [TtMm] #interpreter says this is missing a `
do
echo "Get Target (T/t) or name (M/m)"
read use_selection
echo $use_selection
done

最佳答案

可移植 shell 中执行此操作的最佳方法是

#! /bin/sh

while :; do
echo "Get Target (T/t) or name (M/m)?"
read use_selection
case "$use_selection" in
[TtMm]) break;;
*) echo "Invalid selection" >&2;;
esac
done
echo "$use_selection"

也可以用expr来完成但这有更多的可移植性问题。

不要编写不可移植的shell脚本;特别是,永远不要使用 Bash 扩展。如果您处于扩展似乎是阻力最小的路径的情况下,如果您停下来并用更好的语言重写整个脚本,您几乎肯定会更快乐,例如Perl 或 Python。

关于Linux 脚本,提示/读取 + 字符串相等运算符 + 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23748446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com