導航:首頁 > 操作系統 > linuxif

linuxif

發布時間:2022-04-13 12:00:05

1. linux中的if函數怎麼用啊

題主你好,

我這邊把你的代碼敲了一遍, 沒有出現你說的情況.

測試所用代碼:

寫在最後: 題主把你那邊所用的系統以及代碼運行截圖發過來,我看一下.

另外關於shell語法這東西,熟悉了也就好了,你之所以會生氣是因為剛接觸shell,怎麼調都不和你心意,後期基本的語法都玩熟了,也就沒這種想法了。c語言其實也一樣,如果沒人告訴你語法,而是你自己去猜測,去試,碰一鼻子灰的時候也是現在寫shell時的心態.

另外當你熟悉了一門語言後,再去接觸其它語言,尤其是語法差異較大的語言,就會覺得很別扭,都是先入為主的思想弄的,反過來想,如果你一開始接觸的是shell,可能現在就會覺得c很別扭。你現在可能覺得不是這樣的,那是因為你現在會c語言.

所以我想說的是不管是啥語言,不管設計樣,既然要用它,就靜下心來,盤它就對了:)

=====

希望可以幫到題主, 歡迎追問.

2. linux shell的if語句

echo "你繼續嗎?Y or N"
read ANSWER
if [ 「$ANSWER」 = 「Y」 -o 「$ANSWER」 = 「y」 ] ; then
echo "你選擇了$ANSWER";
elif [ 「$ANSWER」 = 「N」 -o 「$ANSWER」 = 「n」 ] ; then
echo "你選擇了$ANSWER";
else
echo "輸入錯誤"
exit
fi
-----你試試

3. linux裡面if [ 「result」 != 「 「 ]判斷作用是什麼

題主你好,

先說作用再分析.

作用: 判斷 != 兩邊的字元串是否不相等, 即判斷"result"" "是否不相等.

但是光說作用了,其實對於實際使用還是沒有太大幫助.

-----

分析:

截圖中紅框框選的就是本題中用到的!=,用來判斷兩個字元串是否不相等.

=====

希望可以幫到題主, 歡迎追問.

4. Linux的if語句問題

腳本 里 -a是正則表達式的&& ,即全部條件成立才成立,只要第一個條件不成立後面的都不會執行,\( $1 =='q' -a $1 =='Q' -a $1 =='Quit' -a $1 == 'quit' \),你每次輸入一個Q/Quit/q/quit,都只是符合其中一個條件,故這個語句值為假,然後!是當if [ ! **** ]後面的****為假時執行,即會直接輸出「NOT Quiting....」 。
-o 是只要有一個條件成立,全部語句就成立,當你輸入Q/Quit/q/quit時,if 裡面的 \( $1 =='q' -o $1 =='Q' -o $1 =='Quit' -o $1 == 'quit' \) 就是為真,前面再加上一個!,就是 假,故此時執行else後面的語句,於是輸出結果是Unknown Argument。

只要知道!是取反就可以了,講的不好見諒。

5. linux shell if語句中~是什麼意思

if為判斷語句,判斷某個東西是否達到設定的條件。

1,格式為:

if語句格式
if條件
then
Command
else
Command
fi別忘了這個結尾

2,if的三種條件表達式:

ifcommandthen
if函數then命令執行成功,等於返回0(比如grep,找到匹配)執行失敗,返回非0(grep,沒找到匹配)
if[expression_r_r_r]then表達式結果為真,則返回0,if把0值引向then
iftestexpression_r_r_rthen表達式結果為假,則返回非0,if把非0值引向then

6. 求linux shell 中if的寫法

主要是格式問題:
if [[ $jg == false ]]; then
echo -e "\033[41;37m $sj $jg \033[5;m"
elif [[ $jg != false ]]; then
echo -e "\033[42;37m $sj $jg \033[1;m"
fi
注意中間的空格,假如是字元串匹配,最好加上引號。

7. linux 每個if都要搭配一個fi嗎

每個if語句都要用fi結束,而且是每一個if都要對應一個fi。

整個if語句用fi閉合起來才算完整,書寫時if和fi要垂直對齊以方便查看。

格式舉例:

if condition

then

command1

command2

fi

condition是判斷條件,如果 condition 成立(返回「真」),那麼 then 後邊的語句將會被執行;如果 condition 不成立(返回「假」),那麼不會執行任何語句。最後必須以fi來閉合,fi 就是 if 倒過來拼寫,即使有多條語句也不需要用{ }包圍起來。


(7)linuxif擴展閱讀

shell if多條件的格式用法介紹

shell 支持任意數目的分支,當分支比較多時,可以使用 if elif else 結構,它的格式為:

if condition1

then

statement1

elif condition2

then

statement2

elif condition3

then

statement3

else

statementn

fi

注意,if 和 elif 後邊都得跟著 then。整條語句的執行邏輯為:

如果 condition1 成立,那麼就執行 if 後邊的 statement1;如果 condition1 不成立,那麼繼續執行 elif,判斷 condition2。

如果 condition2 成立,那麼就執行 statement2;如果 condition2 不成立,那麼繼續執行後邊的 elif,判斷 condition3。

如果 condition3 成立,那麼就執行 statement3;如果 condition3 不成立,那麼繼續執行後邊的 elif。

如果所有的 if 和 elif 判斷都不成立,就進入最後的 else,執行 statementn。

8. Linux裡面if -s命令作用是什麼

字元串判斷

str1 = str2當兩個串有相同內容、長度時為真

str1 != str2 當串str1和str2不等時為真

-n str1 當串的長度大於0時為真(串非空)

-z str1 當串的長度為0時為真(空串)

str1 當串str1為非空時為真

2、數字的判斷

int1 -eq int2兩數相等為真

int1 -ne int2兩數不等為真

int1 -gt int2int1大於int2為真

int1 -ge int2int1大於等於int2為真

int1 -lt int2int1小於int2為真

int1 -le int2int1小於等於int2為真

3 文件的判斷

-r file用戶可讀為真

-w file用戶可寫為真

-x file用戶可執行為真

-f file文件為正規文件為真

-d file文件為目錄為真

-c file文件為字元特殊文件為真

-b file文件為塊特殊文件為真

-s file文件大小非0時為真

-t file當文件描述符(默認為1)指定的設備為終端時為真

3、復雜邏輯判斷

-a 與

-o或

! 非

EXAMPLE:

[ -a FILE ] 如果 FILE 存在則為真。

[ -b FILE ] 如果 FILE 存在且是一個塊特殊文件則為真。

[ -c FILE ] 如果 FILE 存在且是一個字特殊文件則為真。

[ -d FILE ] 如果 FILE 存在且是一個目錄則為真。

[ -e FILE ] 如果 FILE 存在則為真。

[ -f FILE ] 如果 FILE 存在且是一個普通文件則為真。

[ -g FILE ] 如果 FILE 存在且已經設置了SGID則為真。

[ -h FILE ] 如果 FILE 存在且是一個符號連接則為真。

[ -k FILE ] 如果 FILE 存在且已經設置了粘制位則為真。

[ -p FILE ] 如果 FILE 存在且是一個名字管道(F如果O)則為真。

[ -r FILE ] 如果 FILE 存在且是可讀的則為真。

[ -s FILE ] 如果 FILE 存在且大小不為0則為真。

[ -t FD ] 如果文件描述符 FD 打開且指向一個終端則為真。

[ -u FILE ] 如果 FILE 存在且設置了SUID (set user ID)則為真。

[ -w FILE ] 如果 FILE 如果 FILE 存在且是可寫的則為真。

[ -x FILE ] 如果 FILE 存在且是可執行的則為真。

[ -O FILE ] 如果 FILE 存在且屬有效用戶ID則為真。

[ -G FILE ] 如果 FILE 存在且屬有效用戶組則為真。

[ -L FILE ] 如果 FILE 存在且是一個符號連接則為真。

[ -N FILE ] 如果 FILE 存在 and has been mod如果ied since it was last read則為真。

[ -S FILE ] 如果 FILE 存在且是一個套接字則為真。

[ FILE1 -nt FILE2 ] 如果 FILE1 has beewww.028x.cn#hanged more recently than FILE2, or 如果 FILE1 exists and FILE2 does not則為真。

[ FILE1 -ot FILE2 ] 如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在則為真。

[ FILE1 -ef FILE2 ] 如果 FILE1 和 FILE2 指向相同的設備和節點號則為真。

[ -o OPTIONNAME ] 如果 shell選項 「OPTIONNAME」 開啟則為真。

[ -z STRING ] 「STRING」 的長度為零則為真。

[ -n STRING ] or [ STRING ] 「STRING」 的長度為非零 non-zero則為真。

[ STRING1 == STRING2 ] 如果2個字元串相同。 「=」 may be used instead of 「==」 for strict POSIX compliance則為真。

[ STRING1 != STRING2 ] 如果字元串不相等則為真。

9. linux if判斷是不是數字

## 方法1
a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers
第一個-n是shell的測試標志,對後面的串"`sed -n '/^[0-9][0-9]*$/p'`" 進行測試,如果非空,則結果為真。
sed默認會顯示所有輸入行信息的,sed 的「-n」選項是讓sed不要顯示,而只顯示我們所需要的內容:即後面的表達式所匹配的行,這是通過表達式中加入「p」命令來實現的。
/^[0-9][0-9]*$/他的含義是匹配至少由一位數字構成的行

## 方法2, 可以,不過不是bash實現的,是使用了grep的正則
#if grep '^[[:digit:]]*$' <<< "$1";then
# echo "$1 is number."
#else
# echo 'no.'
#fi

## 方法3
#if [ "$1" -gt 0 ] 2>/dev/null ;then
# echo "$1 is number."
#else
# echo 'no.'
#fi

## 方法4,case
#case "$1" in
# [1-9][0-9]*)
# echo "$1 is number."
# ;;
# *)
# ;;
#esac

## 方法5,awk
#echo $1| awk '{print($0~/^[-]?([0-9])+[.]?([0-9])+$/)?"number":"string"}'

## 方法5,awk
#if [ -n "$(echo $1| sed -n "/^[0-9]\+$/p")" ];then
# echo "$1 is number."
#else
# echo 'no.'
#fi

## 方法6,expr
expr $1 "+" 10 &> /dev/null
if [ $? -eq 0 ];then
echo "$1 is number"
else
echo "$1 not number"
fi

10. linux中「if [ -f $home/$1]的」含義是什麼

含義:

1、if 條件判斷關鍵字。

2、[ ] 語法要求。

3、-f 文件比較運算符,如果 filename為常規文件,則為真 。

4、$home 取變數的值,如果.sh文件裡面沒有該就是則會取用戶系統變數!你可以在終端中執行一下 echo $home 看看是什麼路徑。

5、$1 取輸入的第一個參數.例: sh xxx.sh 111 那麼此時 $1的值就是 111。

閱讀全文

與linuxif相關的資料

熱點內容
程序員試用期匯報問題協助怎麼寫 瀏覽:127
抖音演算法到底是什麼 瀏覽:126
哪個vlan技術對報文加密 瀏覽:570
單片機定時電路 瀏覽:672
山西平台伺服器雲主機 瀏覽:700
按摩肚臍解壓視頻 瀏覽:989
php55安裝教程 瀏覽:137
雲伺服器怎麼查找本機域名 瀏覽:22
qd123y壓縮機參數 瀏覽:385
程序員媽媽懷孕 瀏覽:490
金普國際編程 瀏覽:537
java什麼是引用類型 瀏覽:944
這是命令嗎txt 瀏覽:314
支付寶android包名 瀏覽:154
eclipsemaven命令 瀏覽:68
24路伺服器配什麼cpu 瀏覽:466
壓縮文件和解壓文件哪個快 瀏覽:675
亞馬遜雲伺服器視頻通話 瀏覽:912
金融知識app哪個好 瀏覽:978
農行理財app收益在哪裡 瀏覽:969