shell腳本動態傳入參數
1. 如何給shell腳本傳入參數小結
#!/bin/bash
echoStart...
echo第0個參數是:$0
echo共有$#個參數:
echo所有參數是:$@
forargsin$@
do
echo$args
done
echoEnd...
有這些就夠你用的了。
2. shell 如何啟動另外一個腳本執行,並傳遞參數
子shell變數傳遞給父shell,中間可以保存個臨時文件讓父shell去讀。
下邊是一個子shell,傳遞給父shell的一個例子,僅做參考
#!/bin/bash
(
subvar="helloshell"
echo"$subvar">temp.txt
)
readpvar<temp.txt
echo$pvar
3. 怎麼寫一個shell腳本傳入參數
echo第1個參數為$1
echo第9個參數為$9
echo第11個參數為${11}
forpin"$@";do
echo$p
done
forp;do
echo$p
done
4. 怎麼給shell命令傳遞可變參數
#!/bin/sh
myFunc()
{
echo "$1"
}
var="$1"
myFunc "$var"
---------------
腳本名為test.sh,執行腳本 ./test.sh test
最後就會在屏幕上列印出字元串 test
說明:腳本主體中用$1取腳本的第一個參數,函數中用$1取函數的第一個參數。第二個參數用$2。依此類推,直到$9。
5. 往shell腳本中傳入參數
參數如下:
$# ----傳遞給程序的總的參數數目
$? ----上一個代碼或者shell程序在shell中退出的情況,如果正常退出則返回0,反之為非0值。
$* ----傳遞給程序的所有參數組成的字元串。
$n ----表示第幾個參數,$1 表示第一個參數,$2 表示第二個參數 ... $0 ----當前程序的名稱
$@----以"參數1" "參數2" ... 形式保存所有參數
$$ ----本程序的(進程ID號)PID
$! ----上一個命令的PID
6. 如何給shell腳本傳參數
調用shell腳本時,後面接參數即可,例如
./test.sh arg1 arg2 arg3 .... 即表示傳入參數arg1, arg2 ,arg3
在test.sh中
使用$1, $2 ,$3 分別表示接收到的參數arg1, arg2, arg3
注意,如果參數中包含空格的話,整個參數要用引號括起來,避免被分割成兩個參數
7. linux如何編寫shell自動多次執行一個第三方程序並傳入參數
首先這個不叫批處理 叫shell腳本 其次我還是不理解會有人在這種地方問Linux的問題 感覺很山寨
整個互聯網難道除了網路知道就沒有地方可以問問題了嗎?
你描述這個問題不是很清楚 為什麼非要把參數放到一個文件裡面 不理解
我寫一個bash腳本吧 如果你用的是正常的發行版直接貼到命令行執行就可以了 1000是執行次數
for i in {1..1000}; do echo apple$i > ./w.tcl; ns ./w.tcl >> ./apple; done
不要追問我 追問了我也不會答的 分我也不在乎 你自己留著吧
8. 如何給shell腳本傳參
這里有一個簡單的參數調用的代碼,請參考
functiontest
{
#這里通過$1,$2,來使用傳遞的參數
echo'Youinputis:'$1
}
echo'=======Paramtest========'
echo'Pleaseinputparam:'
readparam
#如果有多個參數,在後面加即可。
test${param}
下面是結果:
=======Param test========
Please input param:
aaaaaaa
You input is: aaaaaaa
9. 如何給shell腳本傳參數
方法/步驟
執行「nano test.sh」創建一個新的shell腳本。
腳本test.sh的內容如下:
#!/bin/sh
name=$1
echo "the ${name} are great man!"
給新創建的test.sh的腳本賦可執行許可權,命令為「chmod 755 test.sh」。
執行'./test.sh "xiao wang"'命令,可以看到自己編寫腳本的結果「the xiao wang are great man!」。
"name=$1"中$1為系統提供的位置參數,$0代表程序的名稱,[$1/$2/...]從1開始為傳遞的參數。
linux系統除了提供位置參數還提供內置參數,內置參數如下:
$# ----傳遞給程序的總的參數數目
$? ----上一個代碼或者shell程序在shell中退出的情況,如果正常退出則返回0,反之為非0值。
$* ----傳遞給程序的所有參數組成的字元串。
$n ----表示第幾個參數,$1 表示第一個參數,$2 表示第二個參數 ... $0 ----當前程序的名稱
$@----以"參數1" "參數2" ... 形式保存所有參數
$$ ----本程序的(進程ID號)PID
$! ----上一個命令的PID
10. 如何傳遞參數給linux shell 腳本(當腳本從標准輸入而不是從文件獲取時)
sh 絕對路徑/xxx.sh 參數1 參數2 參數3........參數n
---------------------------------------------------------------------------------
如果你保存臨時文件的話,可以使用xargs
比如腳本文件為1.sh,而參數保存在args文件中,用一個命令得到參數內容
cat args
那麼最後可以這樣執行
cat args |xargs sh 1.sh
如果不打算保存臨時文件,那你只好在腳本中寫清楚要如何調用,參數有幾個。
比如你使用2.sh調用1.sh,在2.sh 中寫清楚
1.sh $arg1 $arg2這樣就可以了。
當然腳本中的arg1,arg2也可以是最初的第一個腳本調用傳遞進來的,也可以是硬編碼寫死的。