Shell 調用 window 命令之間互動

來源:互聯網
上載者:User

Linux shell 在Linux 就是一個命令粘合器,很容易把那些工具組合起來,行程一個更強大的工具,或者讓手頭的工作自動化起來。

Window上也有batch ,理論上也有這樣的功能。 但是其文法和功能與Linux 上的shell 比起來,不可同日而語。

如果有的命令只有window版本,如果用linuxshell 調用window的命令,並且參數傳遞?

問題: 想用Linux 上面的shell及其工具如何與window上面的命令結合起來?

 答案是:cywin.

 cywin,在window 上類比linux的運行環境,同時又可以調用原生態的window 命令。

 比如:

 for i  in  $(ls -R)

do

out=$(./test.exe $i) #invoke the window program with the parameter from shell.
echo $out
done

可以不用window那難寫的batch 文法,直接調用linux 命令,運行window命令。

另外一個問題:用wine替代cywin 在Linux 上面運行 window 命令?

for i in $(ls -R)

do

# In Linux environment, it will invoke the window command through wine
# redirect the output of wine to NULL
out=$(wine test.exe $i 2>/dev/null)echo $out

done

不錯也可以運行。這也是一個解決方案。

但是,往往很多程式在wine上面運行不起來,這時候還是推薦cywin。

此外,另外還有一個強大工具: ipython

這是一個基本python的,跨平台的,支援與linux/window 的shell互動的。其支援“!” 運算子,可以調用系統的命令。值得一試。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.