Github操作windows运行器:如何从PATH中删除所有sh.exe



在github windows运行程序中,我需要删除所有的sh.exe从PATH找到,否则我基于Make 4.3的构建将无法正确解析我们的Make文件…

我目前看到两个解决方案来修复它:

  1. PATH中删除所有sh.exedirname路径(即更新GITHUB_PATH)
  2. 另一种方法是直接删除windows操作运行器中的sh.exe

到目前为止我所测试的还没有成功…

  1. 第一次尝试
- name: Remove sh.exe from PATH
run: set GITHUB_PATH -= "/c/Program Files/Git/bin"

错误:A positional parameter cannot be found that accepts argument '/c/Program Files/Git/bin'.

  1. 尝试使用bash代替
- name: Remove sh.exe from PATH
run: |
echo "$PATH"
set PATH=%PATH:C:Program FilesGitbin;=%
set PATH=%PATH:C:Program FilesGitusrbin;=%
echo "$PATH" > $GITHUB_PATH
shell: bash

错误:line 2: =%: command not found

附加物

Github只提供了添加路径到path的例子,而不是删除一个。裁判:https://docs.github.com/en/actions/reference/workflow-commands-for-github-actions adding-a-system-path

去除sh.exe(即解决方案2)您应该尝试将以下cmd添加到您的.yml文件:

- name: Find sh.exe
run: where sh
- name: remove Gitusrbinsh.exe
run: rm 'C:Program FilesGitusrbinsh.exe'
shell: bash
- name: remove Gitbinsh.exe
run: rm 'C:Program FilesGitbinsh.exe'
shell: bash

- name: Clean sh.exe
run: |
where sh
rm 'C:Program FilesGitusrbinsh.exe'
rm 'C:Program FilesGitbinsh.exe'
shell: bash

最新更新