linux帶參數腳本
三個選擇:
1)把參數寫進腳本,運行腳本時不帶參數。
2)使用互動式方法,運行時提示讓用戶手動輸入這些信息。
3)搜索「linux 隱藏進程」。
如果你的用戶名密碼是用於登錄的話,改用密鑰好了:
http://..com/question/324853297.html
② linux shell腳本讀取用戶輸入的參數
$# 是傳給腳本的參數個數
$0 是腳本本身的名字
$1是傳遞給該shell腳本的第一個參數
$2是傳遞給該shell腳本的第二個參數
$@ 是傳給腳本的所有參數的列表
例如:
#!/bin/sh
echo "arg_num: $#"
echo "shell_name: $0"
echo "first_arg : $1"
echo "second_arg : $2"
echo "args : $@"
③ linux腳本如何實現長短參數
if case都可以寫。
舉個小例子:
#!/bin/bash
case $1 in
-l)ls -l;;
--list)ls -l;;
esac
這樣不管你的參數輸入-l 還是--list 效果都是ls -l的結果
④ linux 調用腳本怎麼傳腳本參數
Linux shell腳本開始執行時,系統會初始化一些腳本的環境變數和參數變數,這些變數是可以直接使用的,下面是一些參數變數:
$1,$2,$3......:代表腳本程序的參數,腳本有幾個參數數字就到幾;
那$0代表什麼呢?當然是腳本的名字了
還有和腳本參數有關的一個腳本環境變數:$#
它代表傳遞給腳本的參數個數。
知道了這些,你就可以在你編寫的腳本內編寫處理腳本參數的代碼,一旦你的腳本有了對參數的處理,你就可以這樣調用有參數的腳本:
./腳本名 參數1 參數2......
參數和腳本名、參數和參數之間用空格分開,和使用shell命令的格式是一樣的。
⑤ linux虛擬機下寫shell腳本,帶一個參數,(需要判斷參數個數)
#!/bin/bash
for arg in $*
do
if [ -x $arg ];then
$arg
else
echo "$arg file can't excute"
fi
done
⑥ 求大佬,linux編寫帶參數的修改文件的腳本:modifile.sh 使用方式(基本要求):
方法如下:
String[] cmd = {"/bin/sh","-c","test.sh parm1 parm2"};
Runtime.getRuntime().exec(cmd);
⑦ shell 如何啟動另外一個腳本執行,並傳遞參數
子shell變數傳遞給父shell,中間可以保存個臨時文件讓父shell去讀。
下邊是一個子shell,傳遞給父shell的一個例子,僅做參考
#!/bin/bash
(
subvar="helloshell"
echo"$subvar">temp.txt
)
readpvar<temp.txt
echo$pvar
⑧ linux腳本獲取輸入參數
用eval,可以把字元串當作命令來執行:
val=2
eval "x=$$val"
echo $x
2. 用"$@"把參數列表轉化成數組
val=1
x=( "$@" )
echo "${x[$val]}"
注意:數組是從0開始的,也就是 ${x[0]} 對應 $1、${x[1]} 對應 $2,依次類推……
⑨ linux 運行腳本時帶參數進去 把輸入的參數與腳本內的字元串比較 怎麼做不出來
#!/bin/bash
if [ $1 == "all" ] ;then # 主意後邊]和all之間需要有空格
echo "none"
elif [ $1 = "none" ];then #錯誤同上 注意空格
echo "none"
else
echo "please input all | none"
fi #ifend
⑩ 如何傳遞參數給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也可以是最初的第一個腳本調用傳遞進來的,也可以是硬編碼寫死的。