Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果未在命令行中指定,则for循环中的Linux默认值_Linux_Bash - Fatal编程技术网

如果未在命令行中指定,则for循环中的Linux默认值

如果未在命令行中指定,则for循环中的Linux默认值,linux,bash,Linux,Bash,如何编写一个Linux脚本来打印数字1到n,每行一个但如果未指定n,将使用默认值10。 例如: 脚本名为value /值20应在每行打印1到20 /默认情况下,每行的值应打印1到10 我的剧本: #!/bin/bash num=$1 for (( i = 1 ; i <= ${num} ; i++ )) do echo $i done #/bin/bash num=$1 对于((i=1;i放入剩余的 检查以下各项: #!/bin/bash num=${1:-10} for

如何编写一个Linux脚本来打印数字1到n,每行一个但如果未指定n,将使用默认值10。

例如: 脚本名为value

/值20应在每行打印1到20

/默认情况下,每行的值应打印1到10

我的剧本:

#!/bin/bash

num=$1
for (( i = 1 ; i <= ${num} ; i++ ))
do   
  echo $i
done
#/bin/bash
num=$1
对于((i=1;i放入剩余的

检查以下各项:

#!/bin/bash

num=${1:-10}

for (( i = 1 ; i <= ${num} ; i++ ))

do

echo $i

done
!/bin/bash
num=${1:-10}

对于((i=1;i您只需捕获一个空参数并替换它,如下所示:

num=$1
[[ -z "$num" ]] && num=10
此方法的优点是可以对参数应用任意检查以确保其有效,而不仅仅是捕获空参数:

deflt=10
[[ -z "$num" ]]        && echo 'No argument'     && num=$deflt
[[ $num =~ -.* ]]      && echo 'Starts with "-"' && num=$deflt
[[ ! $num =~ [0-9]+ ]] && echo 'Not integer'     && num=$deflt
[[ $num -gt 99 ]]      && echo 'Too big'         && num=$deflt
deflt=10
[[ -z "$num" ]]        && echo 'No argument'     && num=$deflt
[[ $num =~ -.* ]]      && echo 'Starts with "-"' && num=$deflt
[[ ! $num =~ [0-9]+ ]] && echo 'Not integer'     && num=$deflt
[[ $num -gt 99 ]]      && echo 'Too big'         && num=$deflt