1樓:
-a是and,左右條件兩者都成立
-o是or,左右條件任意一條成立
2樓:
你可以在man test,看到
expression1 -a expression2both expression1 and expression2 are true
expression1 -o expression2either expression1 or expression2 is true
,-a就是兩者都為真,-o就是其中一個為真-f file
file exists and is a regular file-o file
file exists and is owned by the effective user id
3樓:又為勝利而來
shell的意思是殼,在計算機領域的意思是人機介面。人在殼外,計算機在殼內。
pc的dos系統就是人機介面,用鍵盤打入的命令或讓計算機執行的命令組合bat檔案,都通過介面的解釋,告訴計算機要執行的任務。
unix,linux等系統也有類似dos的東西,有sh,csh等人機介面,它們的bat就是 sh 指令碼,csh 指令碼 (script).
人機介面的核心,是一個解釋程式。3
在shell指令碼中有個語句是if [ -d $1"/"$file ],其中 $1"/"$file是什麼意思
4樓:馮虎庭
$1是指你運用這個指令碼後跟著的第一個片語,比如你這個指令碼命名為shell.sh,那麼shell.sh /etc時,/etc代表$1 , for file in ` ls $1 ` 這段語法是代表以file為變數列舉出$1也就是/etc下所有檔案,for...
in 宣告用於對陣列或者物件的屬性進行迴圈操作。
shell 中 if[x$1 = x];then 什麼意思
5樓:匿名使用者
if[x$1 = x];中復$1表示執行shell時傳的第一個引數。制
即:如果有一
bai個dushell檔名為zhitest.sh那麼執行命令為./test.sh a b
其中a為第
dao一個引數b為第二個引數$1就代表的是a這個字母。
在if[x$1 = x];中實際就會判斷 xa = x這樣寫的主要目的是當如果寫成["$1" = "$2" ] 在 $1,$2為空時會在某些bash版本**現編譯錯誤所以運用了shell中的字元抵消原則。
說簡單點就是一種規則,你看**不管x就行。
6樓:匿名使用者
(命令列第一個引數來) $1 如果只等如x, 那就是自變數沒有內容,是空變數, 也
是用來測試命令列上有沒有引數,例如
user@minix-nb:~$ cat a#! /bin/bash
if [ x$1 = x ]
then
echo "the first argu is empty"
else
echo "the first argu is $1"
fiuser@minix-nb:~$ ./athe first argu is emptyuser@minix-nb:
~$ ./a 123the first argu is 123user@minix-nb:~$
這樣 ok? :)
shell指令碼中的,shell指令碼中的 是什麼意思?謝謝!
喻逸 shell中沒有這樣的用法,是makefile中的用法,以下總結了makefile裡面的常用變數 不包含副檔名的目標檔名稱。所有的依賴檔案,以空格分開,並以出現的先後為序,可能包含重複的依賴檔案。第一個依賴檔案的名稱。所有的依賴檔案,以空格分開,這些依賴檔案的修改日期比目標的建立日期晚。目標的...
shell指令碼在linu下執行shell指令碼登陸遠端
bin bash tmptty tty tmptty basename tmptty tmpname whoami ip 目標主機地址 inp1 m 主機的使用者名稱,注意必須有 m inp2 m 主機的密碼,注意必須有 m inp3 ls m inp4 pwd m inputfile in out...
linux如何編寫shell指令碼
自然智慧樹 一般以 bin sh開頭 不是必須要寫,但一定要單獨一行 指定執行這個指令碼的shell程式 也可以用 bin zsh或其他 然後就是堆命令了。linux的shell指令碼支援很多功能,加上linux高度模組化的命令,完全可以用shell指令碼寫出複雜的程式。以上只是簡單介紹如何開始寫s...