我正在尝试从 Windows bash 提示符运行growlnotify.exe。为 mingw32 重新编译它对我来说不是一个好选择。
如果我在 cmd 提示符下使用它,growlnotify 可以工作,但它(主要是)从 bash 提示符下失败。它似乎只能接受一个参数,一个没有开关(即通知消息)。如果有多个参数,它会默默地失败。如果只有一个开关且没有其他参数,则该开关将作为消息发送。
我设法在 Google 上找到了一些提示,表明它与 Windows 不提供真正的 tty 的方式有关,但没有修复。有什么聪明的方法可以强制这样做吗?某种正确转义参数的方法,使其按预期运行?
新讯息:
如果我用三重斜线运行它,参数将被忽略。而如果我在 DOS 中以正确的格式运行它,它会默默地失败。
失败(如果我使用 // 也会失败):
growlnotify /a:'Application Name' /n:'Notification Type' 'message goes here'
Run Code Online (Sandbox Code Playgroud)
但是这个:
growlnotify ///a:'Application Name' ///n:'Notification Type' 'message goes here'
Run Code Online (Sandbox Code Playgroud)
那个人会发送一个带有“消息到这里”的通知,但好像我没有费心去包含前两个参数。但是,单斜杠或双斜杠,它从不发送通知(好像我根本不包含任何参数)。
四重斜线和五重斜线的作用与三重斜线相同。
假设我在:
$ pwd
/home/foo
Run Code Online (Sandbox Code Playgroud)
现在我想在 Windows 10 的文件资源管理器中打开这个 /home/foo。我该怎么做呢?
我使用 mintty 作为 MinGW/MSYS 的控制台模拟器。最近(我不确定确切时间),此组合使用的主目录从我的 Windows 用户文件夹 ( /c/Users/<me>/) 更改为/home/<me>/,这对我造成了轻微破坏。
如何将我的主目录改回?我已经在网上进行了一些搜索,但到目前为止我能找到的所有信息都是特定于 Cygwin 的,并且没有很好地转换为 MinGW/MSYS。
到目前为止,我所追求的最有可能的途径是/etc/passwd和/etc/nsswitch.conf,这两个途径都完全不存在于 MSYS 的根目录中。我试过创建一个/etc/nsswitch.conf包含一条db_home: windows线,但这似乎没有效果。我还没有尝试创建MinGW/MSYS 中不存在的/etc/passwd文件mkpasswd,我不知道它的内容应该是什么。
我在跑:
我在 Windows 7 机器上安装了 Windows 版 Git(不,遗憾的是我无法在这台特定机器上切换到 W10)。它带有一个使用 MinGW-64 但只包含一些二进制文件的 bash 环境。我想添加更多,例如 GCC。
似乎应该以某种方式在 git bash 中添加 MinGW-64 二进制文件,而不是添加整个其他 MSYS2/MinGW-64 安装。但是,我不太清楚启用此功能的最佳方法是什么。我曾尝试在 bash 安装目录中安装win-buildsusr/(似乎所有其他二进制文件所在的地方)。它似乎运行正常,但似乎没有添加任何 AFAICT,没有可执行文件,没有文件夹,nada ......除非我尝试再次运行安装它抱怨那里已经有文件......尽管它们显然不是'不。
因此,我的问题是:我可以使用 win-builds 或其他一些二进制文件来实现我的目标,如果可以,如何使用?
注意:在网络和 SE 周围有几个关于此的问题,但由于 MSYS2、MinGW 和 Git for Windows 中的更改,大多数问题已经很老了,因此不再相关 AFAICT。
在 Windows 上,我有一个 C:\msys32 文件夹(包含我认为是 MSYS2 安装的内容)为/由 ESP32 开发环境(位于 ~/esp)创建。MSYS 主文件夹包含我的 Windows 用户名。
现在,当我将该安装复制到另一台计算机时,突然该文件夹更改了名称,我发现这本身令人不安,因为这不是“我的文件夹”,它只是绕过 Linux 要求的名称,它可能是固定的(规范)名称,例如“用户”。
更重要的是,这种行为意味着我的安装不可移植。当我将 msys32 文件夹复制到另一台计算机时,一切要么中断,要么没有任何意义。对我来说,最好只是从路径中删除该用户名,但我会采取第二好的方法,即给它一个固定的名称。我怎样才能做到这一点?
PS我理解msys的目标是重新创建一个Linux环境,但请考虑到“多用户”在当今大多数人都是“多计算机”的世界中是一种恐龙。
我正在尝试在 Windows 7-64 上使用 MSYS、mingw32 编译 nodejs
Valentin Golev@VALYASNOTEBOOK /home/Valentin_Golev/nodejs
$ ./configure
Checking for program CL : ok C:\Program Files (x86)\Microsoft V
isual Studio 10.0\VC\BIN\x86_amd64\CL.exe
Checking for program CL : ok C:\Program Files (x86)\Microsoft V
isual Studio 10.0\VC\BIN\CL.exe
Checking for program CL : ok C:\Program Files (x86)\Microsoft V
isual Studio 10.0\VC\BIN\amd64\CL.exe
Checking for program CL : ok c:\Program Files (x86)\Microsoft V
isual Studio 9.0\VC\BIN\CL.exe
Checking for program CL : ok c:\Program Files (x86)\Microsoft V
isual Studio 9.0\VC\BIN\CL.exe
Checking for program …Run Code Online (Sandbox Code Playgroud) msys-1.0 (MinGW) 有一个dd可用于 windows ( dd.exe)的实现,但 windows 没有与 dd 一起使用的驱动器的文件表示。或者是吗?Afaik dd 对文件进行操作。
有没有办法(设备名称或类似名称)使用 msys-1.0dd.exe来复制例如附加的 D 驱动器到文件?
在 Windows 文件资源管理器中,如果我按住shift + right-click一个文件夹(也在文件夹中),我可以选择Open command window here. 我真的很想Open MSYS terminal window here在弹出的右键单击上下文菜单中添加一个。有没有办法做到这一点?

我刚刚安装了 MSYS2,为了让它使用我的 Windows 用户文件夹作为 $HOME,我把它放在 /etc/bash.bashrc 中:
HOME=$USERPROFILE
Run Code Online (Sandbox Code Playgroud)
当我只运行 cd 时,这工作正常,除了当我在那里时提示不再显示 ~ 作为当前路径。另一个问题是
cd ~
Run Code Online (Sandbox Code Playgroud)
带我到我的主目录,但在 ~ 之后按 Tab 不会用我的主目录的内容展开它;相反,我得到了一个以 ~ 为前缀的计算机用户列表,并尝试访问其中之一使其尝试 cd 到 /home/(username)。
我怎样才能让 ~ 与不在 /home 中的主目录一起玩得很好?