inux æä½ç³»ç»ç¼ºçç shell æ¯Bourne Again shellï¼å®æ¯ Bourne shell çæ©å±ï¼ç®ç§° Bashï¼ä¸ Bourne shell å®å
¨ååå
¼å®¹ï¼å¹¶ä¸å¨Bourne shell çåºç¡ä¸å¢å ãå¢å¼ºäºå¾å¤ç¹æ§ã
GNU/Linux æä½ç³»ç»ä¸ç /bin/sh æ¬æ¯ bash (Bourne-Again Shell) ç符å·é¾æ¥ï¼ä½é´äº bash è¿äºå¤æï¼æ人æ ash ä» NetBSD 移æ¤å° Linux 并æ´å为 dash (Debian Almquist Shell)ï¼å¹¶å»ºè®®å° /bin/sh æåå®ï¼ä»¥è·å¾æ´å¿«çèæ¬æ§è¡é度ãDash Shell æ¯ Bash Shell å°çå¤ï¼ç¬¦åPOSIXæ åã
DebianåUbuntuä¸ï¼/bin/shé»è®¤å·²ç»æådashï¼è¿æ¯ä¸ä¸ªä¸åäºbashçshellï¼å®ä¸»è¦æ¯ä¸ºäºæ§è¡èæ¬èåºç°ï¼èä¸æ¯äº¤äºï¼å®é度æ´å¿«ï¼ä½åè½ç¸æ¯bashè¦å°å¾å¤ï¼è¯æ³ä¸¥æ ¼éµå®POSIXæ åã
è¯æ³ä¸ç主è¦çåºå«æ:
1.å®ä¹å½æ°
bash: functionå¨bashä¸ä¸ºå
³é®å
dash: dashä¸æ²¡æfunctionè¿ä¸ªå
³é®å
2.select var in list; do command; done
bash:æ¯æ
dash:ä¸æ¯æ, æ¿ä»£æ¹æ³:éç¨while+read+caseæ¥å®ç°
3. echo {0..10}
bash:æ¯æ{n..m}å±å¼
dash:ä¸æ¯æï¼æ¿ä»£æ¹æ³, éç¨seqå¤é¨å½ä»¤
4. here string
bash:æ¯æhere string
dash:ä¸æ¯æ, æ¿ä»£æ¹æ³:å¯éç¨here documents
5. >&wordéå®åæ åè¾åºåæ åé误
bash: å½word为éæ°åæ¶ï¼>&wordåæéå®åæ åé误åæ åè¾åºå°æ件word
dash: >&word, wordä¸æ¯æéæ°å, æ¿ä»£æ¹æ³: >word 2>&1; 常è§ç¨æ³ >/dev/null 2>&1
6. æ°ç»
bash: æ¯ææ°ç», bash4æ¯æå
³èæ°ç»
dash: ä¸æ¯ææ°ç»ï¼æ¿ä»£æ¹æ³, éç¨åéå+åºå·æ¥å®ç°ç±»ä¼¼çææ
7. åå符串æ©å±
bash: æ¯æ${parameter:offset:length},${parameter:offset}
dash: ä¸æ¯æï¼ æ¿ä»£æ¹æ³:éç¨expræcutå¤é¨å½ä»¤ä»£æ¿
8. 大å°å转æ¢
bash: æ¯æ${parameter^pattern},${parameter^^pattern},${parameter,pattern},${parameter,,pattern}
dash: ä¸æ¯æï¼æ¿ä»£æ¹æ³:éç¨tr/sed/awkçå¤é¨å½ä»¤è½¬æ¢
9. è¿ç¨æ¿æ¢<(command), >(command)
bash: æ¯æè¿ç¨æ¿æ¢
dash: ä¸æ¯æ, æ¿ä»£æ¹æ³, éè¿ä¸´æ¶æ件ä¸è½¬
10. [ string1 = string2 ] å [ string1 == string2 ]
bash: æ¯æ两è
dash: åªæ¯æ=
11. [[ å 强çtest
bash: æ¯æ[[ ]], å¯å®ç°æ£åå¹é
ç强大åè½
dash: ä¸æ¯æ[[ ]], æ¿ä»£æ¹æ³ï¼éç¨å¤é¨å½ä»¤
12. for (( expr1 ; expr2 ; expr3 )) ; do list ; done
bash: æ¯æCè¯è¨æ ¼å¼çfor循ç¯
dash: ä¸æ¯æè¯¥æ ¼å¼çfor, æ¿ä»£æ¹æ³ï¼ç¨while+$((expression))å®ç°
13. letå½ä»¤å((expression))
bash: æå
ç½®å½ä»¤let, ä¹æ¯æ((expression))æ¹å¼
dash: ä¸æ¯æï¼æ¿ä»£æ¹æ³ï¼éç¨$((expression))æè
å¤é¨å½ä»¤å计ç®
14. $((expression))
bash: æ¯æid++,id--,++id,--idè¿æ ·å°è¡¨è¾¾å¼
dash: ä¸æ¯æ++,--, æ¿ä»£æ¹æ³:id+=1,id-=1, id=id+1,id=id-1
温馨提示:答案为网友推荐,仅供参考