编辑:已解决。谢谢大家!Bash脚本只留下4位数字
我正在构建一个shell脚本,我坚持比较。我通过./myscript 1000调用它,其中1000位于名为y的变量中。
的问题是我需要它,如果我通过任意4位数字给我的脚本,如0001它不会被我的if语句进行修改,但是当我把我的脚本它基本上是告诉我0001和1是一样的东西。我如何检查$ y的大小来解决我的问题?
我试过回显y,它显示0001和1时,当我将它们传递给我的脚本,但我不知道如何有任何4位数字留下。
####CODE SNIPP
#NOT EVEN NEEDED, JUST FOR SHOW, need to think of 0000 to any 4 digit #
#as different, but not sure how to do it.
if [ "$y" -ge 0000 ] && [ "$y" -le 9999 ]
then
#DO NOTHING
#IF Y <= 50 && Y >= 0
elif [ "$y" -le 50 ] && [ "$y" -ge 0 ]
then
#DO SOMETHING
#IF Y > 50 && Y <= 99
elif [ "$y" -gt 50 ] && [ "$y" -le 99 ]
then
#DO SOMETHING
fi
有没有人有关于如何告诉我的任何提示脚本0001和1是两个不同的东西?我认为bash必须有一些东西来检查输入长度或什么,但我找不到任何东西。
不需要wc;如果y = 1000,$ {#y}将会是4 – 2010-11-07 04:42:30
向你的bash-foo鞠躬。 :-) 谢谢!这会派上用场。 – Ashe 2010-11-07 05:01:01