我正在写剧本。
case "${x_time}" in
10) cp fileA fileB
;;
20) cp fileC fileD
;;
*) echo "Please check the $x_time"
;;
esac
我希望1..10
代替10
和11..20
代替20
。例如(1|2|3|...|10)
我的意思是,如果$x_time is 7
,first block
应该执行,18, the second block
代表21, the *)
。
检查$x_time
列表的任何解决方案?
谢谢。
答案 0 :(得分:0)
改为使用[[ ]]
测试:
if [[ $x_time -ge 1 && $x_time -le 10 ]]; then
cp fileA fileB
elif [[ $x_time -ge 11 && $x_time -le 20 ]]; then
cp fileC fileD
else
echo "Please check the $x_time"
fi
也可以根据自己的喜好使用(( ))
。
if (( x_time >= 1 && x_time <= 10 )); then
cp fileA fileB
elif (( x_time >= 11 && x_time <= 20 )); then
cp fileC fileD
else
echo "Please check the $x_time"
fi