首頁>Club>
9
回覆列表
  • 1 # 使用者1585913202729

    首先,樓主,你打漏了一個字元,正確的是#!/bin/python要了解這行是幹啥用的,得先了解一個“魔數(magic number)”的概念。每一種檔案,在檔案開頭,都有一個標識檔案型別的位元組序列,標識這個檔案是什麼型別的。這個位元組序列叫““魔數”。像unix下的指令碼,這個魔數就是"#!"。這個魔數的英文名叫“Shebang”。作業系統的檔案直譯器在載入檔案時,先要判斷檔案是什麼型別的,然後再載入特定的檔案直譯器,來解讀這個檔案。作業系統的檔案直譯器判斷的依據,就是看這個魔數。所以,當看到"#!"時,作業系統的檔案直譯器知道這是一個“指令碼”。那具體用哪一種指令碼直譯器呢?它繼續讀。結果發現/bin/python。也就是要用/bin/python 這個路徑下的一個叫“python”的直譯器來解釋這個檔案。於是作業系統的檔案直譯器就載入了這個python直譯器。 然後作業系統的檔案直譯器任務就完成了。當python直譯器被載入執行後,它自己來解釋這個檔案。這時,它看到第一行: #!/bin/python它認得一開頭的#是標記註釋行開始的記號,所以它認為這是一行註釋,就直接跳過。然後開始執行後續的真正的python指令。綜上,這一行,被兩個層次的直譯器以不同的形式解釋。

  • 中秋節和大豐收的關聯?
  • 買港牌車能繼承牌照嗎?