當前位置:首頁 » 編程軟體 » bash腳本字元串

bash腳本字元串

發布時間: 2023-07-28 22:57:53

① 如何將bash shell腳本字元串寫入到文件中

剛學完新書《實用Linux Shell編程》,寫的不錯,容易懂,網上和書店都有賣。

現在試著回答,僅供參考,謝謝。

1)先保證文件內容正確:

2)文件1文件2隻有唯一字元串,所以情況相對簡單。腳本寫好了,別忘了給腳本增加執行許可權。

② hell 如何在bash腳本中連接兩個字元串變數

bash在一個腳本里引用另一個腳本定義的變數有3種方法:

  • fork(/directory/script.sh)

    fork是最普通的,就是直接在腳本裡面用/directory/script.sh來調用script.sh這個腳本.

    運行的時候開一個sub-shell執行調用的腳本,sub-shell執行的時候,parent-shell還在。

    sub-shell執行完畢後返回parent-shell.sub-shell從parent-shell繼承環境變數.但是sub-shell中的環境變數不會帶回parent-shell

  • exec(exec/directory/script.sh)

    exec與fork不同,不需要新開一個sub-shell來執行被調用的腳本.被調用的腳本與父腳本在同一個shell內執行。但是使用exec調用一個新腳本以後,父腳本中exec行之後的內容就不會再執行了。這是exec和source的區別

  • source(source/directory/script.sh)

    與fork的區別是不新開一個sub-shell來執行被調用的腳本,而是在同一個shell中執行.所以被調用的腳本中聲明的變數和環境變數,都可以在主腳本中得到和使用.

  • 可以通過下面這兩個腳本來體會三種調用方式的不同:

    1.sh

    #!/bin/bash

    A=B

    echo"PIDfor1.shbeforeexec/source/fork:$$"

    exportA

    echo"1.sh:$Ais$A"

    case$1in

    exec)

    echo"usingexec…"

    exec./2.sh;;

    source)

    echo"usingsource…"

    ../2.sh;;

    *)

    echo"usingforkbydefault…"

    ./2.sh;;

    esac

    echo"PIDfor1.shafterexec/source/fork:$$"

    echo"1.sh:$Ais$A"

    2.sh

    #!/bin/bash

    echo"PIDfor2.sh:$$"

    echo"2.shget$A=$Afrom1.sh"

    A=C

    exportA

    echo"2.sh:$Ais$A"

    執行情況:

    $./1.sh

    PIDfor1.shbeforeexec/source/fork:5845364

    1.sh:$AisB

    usingforkbydefault…

    PIDfor2.sh:5242940

    2.shget$A=Bfrom1.sh

    2.sh:$AisC

    PIDfor1.shafterexec/source/fork:5845364

    1.sh:$AisB

    $./1.shexec

    PIDfor1.shbeforeexec/source/fork:5562668

    1.sh:$AisB

    usingexec…

    PIDfor2.sh:5562668

    2.shget$A=Bfrom1.sh

    2.sh:$AisC

    $./1.shsource

    PIDfor1.shbeforeexec/source/fork:5156894

    1.sh:$AisB

    usingsource…

    PIDfor2.sh:5156894

    2.shget$A=Bfrom1.sh

    2.sh:$AisC

    PIDfor1.shafterexec/source/fork:5156894

    1.sh:$AisC

    $

③ bash腳本中,條件判斷一個字串是否在數組中,除了列舉之外,還有什麼簡單的寫法嗎

只能是遍歷數組元素來比較:
if [ "$str1「 = "conditon1" ]; then
action1
elif [ 「$str1」 = "conditon3" ]; then
action 3
fi
for elem in ${array[@]}
do
if [ "$str1" = "$elem" ]; then
action2
break
fi
done

④ 在shell bash腳本里,如何把一個字元串中的回車轉成其他字元

假設 s 是含回車的字元串

echo$s|tr'
''	'

能夠將回車轉成 Tab。 可以換成你想要字元。

熱點內容
滑鼠如何編程 發布:2025-05-16 02:29:09 瀏覽:814
安卓70能用什麼軟體 發布:2025-05-16 01:45:09 瀏覽:480
編程發展史 發布:2025-05-16 01:38:52 瀏覽:528
android圖片氣泡 發布:2025-05-16 01:38:40 瀏覽:885
文件加密編輯器下載 發布:2025-05-16 01:30:41 瀏覽:343
linuxapacheyum安裝 發布:2025-05-16 01:30:31 瀏覽:476
大連賓利浴池wifi密碼是多少 發布:2025-05-16 01:25:36 瀏覽:172
緩存數據生產服務 發布:2025-05-16 01:08:58 瀏覽:584
普通電腦伺服器圖片 發布:2025-05-16 01:04:02 瀏覽:971
伺服器地址和埠如何區分 發布:2025-05-16 01:03:17 瀏覽:834