forked from cheng/wallet
53 lines
1.8 KiB
Markdown
53 lines
1.8 KiB
Markdown
|
---
|
|||
|
title: Git Bash undocumented command line
|
|||
|
---
|
|||
|
|
|||
|
git-bash is a `mintty.exe` wrapper and bash wrapper – it winds up invoking
|
|||
|
other processes that do the actual work. While git-bash.exe is undocumented, `mintty.exe` and [`bash.exe`](https://www.gnu.org/software/bash/manual/bash.html) [are documented](http://www.gnu.org/gethelp/).
|
|||
|
|
|||
|
`git-bash.exe` sets up the environment in windows for `bash.exe`, then launches the bash shell
|
|||
|
|
|||
|
Example Windows shortcut to bash script: `/x/src/wallet/docs/mkdocs.sh`
|
|||
|
|
|||
|
"C:\Program Files\Git\git-bash.exe" --cd=X:\src\wallet --needs-console --no-hide --command=usr\bin\bash.exe --login -i docs/mkdocs.sh
|
|||
|
|
|||
|
Notice that the paths to the left of the invocation of `bash` are in Windows
|
|||
|
format, and the paths to the right of the invocation of bash are in gnu
|
|||
|
format.
|
|||
|
|
|||
|
Albeit this way of executing a bash script in windows is too clever by half,
|
|||
|
since you should be able to execute it just by clicking on it.
|
|||
|
|
|||
|
`--cd=D:\src`
|
|||
|
Sets the initial working directory to `/d/src` (windows path, launches bash
|
|||
|
with the corresponding gnu path)
|
|||
|
|
|||
|
`--no-cd`
|
|||
|
does not set working directory.
|
|||
|
|
|||
|
`--cd-to-home`
|
|||
|
Sets the working directory to home.
|
|||
|
|
|||
|
`--command=`command-line
|
|||
|
Executes `<command-line>` instead of the embedded string resource.
|
|||
|
|
|||
|
`--minimal-search-path`
|
|||
|
Ensures that only `/cmd/` is added to the `PATH` instead of `/mingw??/bin` and `/usr/bin/`
|
|||
|
|
|||
|
`--no-minimal-search-path`
|
|||
|
Normal search path
|
|||
|
|
|||
|
`--needs-console`
|
|||
|
Ensures that there is a Win32 console associated with the spawned process
|
|||
|
|
|||
|
`--no-needs-console`
|
|||
|
Fails to ensure that there is a Win32 console
|
|||
|
|
|||
|
`--hide`
|
|||
|
Hides the console window. This makes sense if you are launching a script and
|
|||
|
not expecting any feedback. But it means that the script has no means to
|
|||
|
give you an error message.
|
|||
|
|
|||
|
`--no-hide`
|
|||
|
Does not hide the console window.
|