如何使bash脚本不区分大小写?

时间:2018-02-15 07:41:21

标签: linux bash scripting case-sensitive

我正在编写一个脚本,根据输入的名称输出关于我的朋友的内容,但在脚本中我将if / then的条件设为大写。有没有办法可以让它成为一个小写字母,它仍然是相同的输出?

2 个答案:

答案 0 :(得分:-1)

在bash中,您可以使用,,参数扩展来小写变量值:

#! /bin/bash

read -p Name: name
case ${name,,} in
    (john) echo Hi John! ;;
    (jane) echo Hallo Jane! ;;
    (jack) echo Long time no see, Jack! ;;
    (*)    echo "I don't know you." ;;
esac

答案 1 :(得分:-1)

您可以尝试使用包含所有大写字母的单词作为案例,例如:

# name="Viktor"; echo "${name^^}"
VIKTOR

所以,只需写下:

#!/bin/bash

echo "Type your name"
read name
capitalName=$(echo "${name^^}")
case "${capitalName}" in
...
esac