Bash
從 .sh 文件呼叫 .csh 文件
我可以
.csh
從.sh
shell 腳本文件中呼叫腳本文件嗎?例如,我有
a.sh
,b.csh
。我可以在 a.sh 文件中呼叫 b.csh 嗎?如果是這樣,怎麼做?我試過寫這是灰文件
variable= source /path/to/b.csh
- 沒用sh ./path/to/b.csh
- 沒用我想補充一點,
b.csh
文件中提到了 shebang 行#!/bin/csh -fx
您可以執行
b.csh
froma.sh
,就像您可以執行任何程序一樣grep
orcat
。你不能指望執行
b.csh
會給shell執行的環境添加任何變數a.sh
——b.csh會在子程序中執行,並且不允許子程序改變父程序的環境(這是基本安全)。如果您需要從 通信數據
b.csh
,則 b.csh 需要列印該數據,並且 a.sh 可以通過命令替換來擷取它:data=$(b.csh)
– 儘管您可能必須-x
從 csh shebang 行中刪除該選項以減少噪音.