簡體   English   中英

git-bash.exe:如何運行單個命令?

[英]git-bash.exe: how to run single command?

我使用的是 Windows 版 Git便攜式版本,但是當我使用git-bash.exe運行單個命令時,它看起來不起作用。 你能幫我找出問題出在哪里嗎?

我有一個 PowerShell 腳本可以調用下面的命令。 但看起來它不起作用。 我無法讓新的 cmd 窗口暫停以查看錯誤日志:

cmd /c "d:\git\git-bash.exe dos2unix d:\test\my-script.sh"

但是如果雙擊並運行bash-exe.sh ,則在git-bash.exe窗口中鍵入

dos2unix d:\test\my-script.sh

那么它的工作原理。

從PowerShell調用EXE有幾種不同的方法。 我發現可以讓您最大程度地控制自己的最佳方法之一是Start-Process cmdlet。 而不是調用cmd.exe窗口,請嘗試以下操作:

Start-Process -FilePath 'd:\git\git-bash.exe' -ArgumentList 'dos2unix d:\test\my-script.sh'

更好的是將該Shell腳本轉換為本地PowerShell! :)

無論如何,我有一個解決方案。 在可移植git的\\ usr \\ bin下,有一個名為dos2unix.exe的exe,因此我可以直接從Powershell腳本而不是git-bash.exe調用dos2unix.exe,然后再調用dos2unix命令。

 cmd /c "d:\git\usr\bin\dos2unix.exe d:\test\my-script.sh"

通過這種解決方法,問題得以解決。 但是我仍然不知道為什么powershell調用dos2unix來解析我的文件不起作用(我的意思是在調用該命令后文件沒有被轉換)。

另一種解決方案是使用base.exe ,例如:

"%ProgramFiles%\Git\bin\bash.exe" start.sh

暫無
暫無

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

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