You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何GitBash使用别名时会生成名为“1”的文件?

解决Git Bash别名生成“1”文件的问题

问题根源

你使用的命令/git-bash.exe & > /dev/null 2&>1存在Shell重定向语法错误:

  • 2&>1是错误写法,Shell会将其解析为把输出重定向到文件“1”,同时把“2”当作额外参数传递给程序,这就是生成“1”文件的直接原因。
  • 后台运行符号&的位置不合理,容易导致Shell解析混乱。

正确的别名命令

替换成以下两种正确写法之一即可:

写法1:标准重定向格式

alias gitbash='/path/to/git-bash.exe > /dev/null 2>&1 &'
  • > /dev/null:将标准输出(stdout)重定向到空设备
  • 2>&1:将标准错误(stderr)重定向到标准输出的位置(即跟着stdout一起进入/dev/null)
  • 末尾的&:让程序在后台运行

写法2:简洁重定向格式

Bash支持用&>/dev/null一次性将stdout和stderr都重定向到空设备,命令更简洁:

alias gitbash='/path/to/git-bash.exe &>/dev/null &'

生效步骤

  1. 打开你的aliases.sh文件(如果是通过~/.bashrc或~/.bash_profile引入的,也可以直接修改对应文件)
  2. 替换掉原来的错误命令,保存文件
  3. 执行以下命令让别名立即生效:
source aliases.sh

内容的提问来源于stack exchange,提问作者Stacklep1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 21:25:43