簡體   English   中英

Linux bash/shell 是如何讀取我們給它的命令的?

[英]How does Linux bash/shell read the command we give to it?

例如,如果我發送bash -c " echo "$S" "

它如何讀取命令,從左到右,或從左和右一起讀取到中間? 要不然?

如果不是太多,您能否逐步列出,例如 linux bash/shell 如何讀取和處理它接收到的每個字符和符號?

假設您從bash shell 發出此命令,並且變量S包含值xy

首先,變量被擴展,這會給你留下

bash -c " echo "x      y" " 

然后,引號被擴展。 因此,您剩下 4 個令牌:

  • bash
  • -C
  • echo x (一個前導空格)
  • y (即 y 后跟一個空格)

接下來,啟動另一個 bash,其中包含 arguments -cecho xy

這個 bash-subshell 現在將執行 echo 命令並打印xy

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM