1樓:網友
if [ z "$1" ]then
echo "1st argument is empty!"
fi$1就表示指令碼的第乙個輸入引數。
shell指令碼怎麼判斷變數或引數是否為空
如何判斷在shell程式命令列輸入的程式引數$1是否為空
2樓:五哲的不靠譜
本來一直使用:
db_name=$1
if [ z $db_name ]
thenecho "database no selected yet "
db_name=remotedb
elseecho "datebase selected yet "
echo "datebase selected yet db_name=$db_name"
fi但是不能判斷,一直顯示不是空串,後面查詢知道問題跟用的shell有關。如果用ksh,直接用[ -z $1 ]或[[ z $1 ]]就可以了,如果是sh,要把$1引起來:[ z "$1" ]
另乙個方法是[ arg"$1" =arg ]
修改為下面,ok了。
db_name=$1
if [ z "$db_name" ]
thenecho "database no selected yet "
db_name=remotedb
elseecho "datebase selected yet "
echo "datebase selected yet db_name=$db_name"fi
如何判斷在shell程式命令列輸入的程式引數
3樓:
$0:命令本身、$1:命令列的第乙個引數、$2:命令列的第二個引數。如下:
$myrunfile file1 file2 file3
則:$0:myrunfile、$1:file1、$2:file2、$3:file3
如何傳遞引數給linux shell 指令碼(當指令碼從標準輸入而不是從檔案獲取時)
4樓:匿名使用者
sh 絕對路徑/ 引數1 引數2 引數3...引數n
如果你儲存臨時檔案的話,可以使用xargs
比如指令碼檔案為,而引數儲存在args檔案中,用乙個命令得到引數內容。
cat args
那麼最後可以這樣執行。
cat args |xargs sh
如果不打算儲存臨時檔案,那你只好在指令碼中寫清楚要如何呼叫,引數有幾個。
比如你使用呼叫,在 中寫清楚。
$arg1 $arg2這樣就可以了。
當然指令碼中的arg1,arg2也可以是最初的第乙個指令碼呼叫傳遞進來的,也可以是硬編碼寫死的。
5樓:匿名使用者
sh `cat
·是反引號,esc下面的鍵。
6樓:匿名使用者
sh a b c < file
cat <&0
這樣就可以處理標準輸入的內容了。
shell指令碼引數中有空格
7樓:匿名使用者
將包含空格的字串用雙引號引起來,這樣就可以傳遞了。
8樓:網友
用雙引號就可以了,這樣就是乙個整體。
例如: "hello world"
指令碼中取引數時也要用雙引號: "1"
9樓:匿名使用者
字串加引號,或者空白前面加轉義符。
10樓:匿名使用者
加上雙引號就可以傳遞了。
shell中對返回結果是否為空的判斷
11樓:匿名使用者
你把$a用引號引起來試試。 如下。
[ -n "$a" ]
[ -z "$a" ]
12樓:網友
[ -n $a ] 改為 [ n "$a" ]
-n是對字串是否為空進行判斷,後面必須是字串形式,**雙引號,否則可能出錯。
shell指令碼判斷引數為7或者為9
用shell指令碼讀取文字檔案中的第2列,應該怎麼編寫
設分隔符是空格,用awk 或 cut都可以 cat file.txt cut d f2 cat file.txt awk shell指令碼中怎麼輸出第二列為指定內容的所有行的資訊 寫個指令碼,使用for迴圈,設乙個變數i 代表的是行號,從1開始,然後每次執行加1,類似 於a cat file wc ...
怎麼用JS判斷輸入框中輸入的全是空格
方法刪除前後空格 if value 判斷是否是空字串,而不是null alert 輸入不能為空 怎麼用js驗證輸入框是否為空,當輸入空格的時候也判斷該輸入框為空 測試輸入框 js function chkblk ele javascript 驗證輸入框中是否有空格 用indexof 可以判斷是否有空...
android 中怎麼執行js指令碼
webview裡面可以執行js指令碼。但如果不是高手還是算了吧,太難了。按照給定的字符集儲存檔案時,在檔案的最開頭的三個位元組中就有可能儲存著編碼資訊,所以,基本的原理就是只要讀出檔案前三個位元組,判定這些位元組的值,就可以得知其編碼的格式。其實,如果專案執行的平台就是中文作業系統,如果這些文字檔案...