【发布时间】:2020-03-18 08:27:03
【问题描述】:
我想问是否有办法在某些命令之前添加前缀。关于 SO 的大多数类似问题都涉及在命令的输出中添加前缀,而不是在命令执行本身中添加前缀,所以这是我的示例:
我需要连接到 docker 容器,我在 Windows 上工作并使用带有 bash 终端的 ConEmu,所以我需要使用 winpty 前缀才能连接到容器的 unix 终端,如下所示:
docker exec -it my_container bash
结果:
unable to setup input stream: unable to set IO streams as raw terminal: The handle is invalid.
所以我需要使用:
winpty docker exec -it my_container bash
root@0991eb946acc:/var/www/my_container#
不幸的是,如果我从乞求的 winpty 添加,我的自动完成不起作用,所以我需要先编写 docker 命令,然后跳转到命令的开头输入 winpty。我想让 bash 自动检测每当我运行“docker exec”在它之前添加 winpty 前缀。 如何做到这一点? 我知道我可以为
alias de='winpty docker exec'
但我宁愿继续使用正常的 docker 命令流来自动完成。
【问题讨论】: