我正在尝试远程运行一些命令并接收带有颜色的输出。我遗漏了什么?
以下是我目前得到的信息:
例子.sh
. /etc/profile
[[ -f ~/.profile ]] && . ~/.profile;
[[ -f ~/.bashrc ]] && . ~/.bashrc;
echo "hello remote"
cd /vagrant/repositories/repo
pwd
phpunit --color
我将脚本传输到 ssh 中,如下所示:
cat example.sh | ssh vagrant@localhost /bin/bash -s
答案1
是的,可以使用-tt
开关,这将强制分配 TTY,并诱使远程程序也写入颜色。我可以在我的系统上运行的最小测试:
无颜色:
ssh localhost "cowsay hello | lolcat"
带有颜色:
ssh -tt localhost "cowsay hello | lolcat"