是否可以设置 Cygwin,以便如果我使用任意 Windows 本地启动方法(cmd.exe,Total Commander 命令行)从任意路径调用 Cygwin.bat,它将启动在该目录中准备的 bash?
例如,如果我运行 cmd.exe 并执行以下操作(前提是 Cygwin.bat 在我的 上PATH):
C:\Users\Me>cd testdir
C:\Users\Me\testdir>dir /b
myfile1
myfile2
C:\Users\Me\testdir>Cygwin
Run Code Online (Sandbox Code Playgroud)
Cygwin 窗口打开,我刚刚离开的地方:
me@here /cygdrive/c/Users/Me/testdir
$ ls
myfile1* myfile2*
me@here /cygdrive/c/Users/Me/testdir
Run Code Online (Sandbox Code Playgroud)
如您所见,当我收到 Cygwin 提示时,我已经在testdir,而不是/home/me。
(我将使用它的更典型的场景是从 Total Commander 的命令行运行 Cygwin,但我想它应该工作相同。)
如何实现这一目标?
小智 5
我可以为你拼凑一些东西。将其放入路径中的批处理文件中(我称为我的cygwin.bat,并通过输入来调用它cygwin.bat):
@echo off
set pth=%CD:~2,99%
set pth=%pth:\=/%
set drv=%CD:~0,1%
set "fullpath=/cygdrive/%drv%%pth%"
C:\cygwin\bin\bash.exe --login -i -c "cd ""%fullpath%""; exec /bin/bash"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2217 次 |
| 最近记录: |