2015-10-28 39 views
0

我正在學習shell,我想知道如何使用命令行(不使用腳本)將參數傳遞到變量並檢查參數長度。例如我要輸入10 20到命令行,並想在兩者之間輸出的數字,我想傳遞參數並檢查它們的長度

for((i=$1;i<$2;i++))do echo "$1"; done // or 
    a=$1 
    b=$2 
    for((i=$a;i<$b;i++))do echo "$1"; done 

但沒有任何工程,也是我想檢查參數的數量,但無法找到和它的源代碼,正如我所提到的,我希望使用不使用腳本的命令行執行它們並執行它們。

+3

你是如何打算讓「論點」,直接在命令行上?你在期望「$ 1」和「$ 2」在你的交互提示中包含/你在做什麼? –

回答

0

在原始提示處,通常不設置位置參數($1,$2等)。你可以設置它們,但它很奇怪。對於你的情況,你可以這樣做:

$ set 10 20 # set $1 and $2 
$ i=$1 
$ while test $i -lt $2; do echo $((i++)); done 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 

$ foo() { i=${1:?}; while test $i -lt ${2:?}; do echo $((i++)); done; } 
$ foo 10 20 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
相關問題