SSH 完全可以使用此命令:
$ ssh user@$THE_IP_ADDRESS
但是當我嘗試 scp 時,我得到了這個完全無意義的輸出
$ scp ~/file user@$THE_IP_ADDRESS:~/file
\033[?25l\033[?7l\033[0m\033[31m\033[1m .-/+oossssoo+/-.
並且命令失敗。這個消息是什麼意思?為什麼我無法複製我的文件?
客戶是:
Darwin MacBook-Pro-4.local 17.4.0 Darwin Kernel Version 17.4.0: Sun Dec 17 09:19:54 PST 2017; root:xnu-4570.41.2~1/RELEASE_X86_64 x86_64
伺服器是:
Linux cortex-deus 4.13.0-36-generic #40~16.04.1-Ubuntu SMP Fri Feb 16 23:25:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
答案1
事實證明我.bashrc
把它弄壞了。我的.bashrc
來電新提取登入後可以列印一些樣式的 ASCII 藝術作品。這.-/+oossssoo+/-.
是 ascii 藝術的一部分,其他的東西是顏色等的轉義碼。我透過在登入時不列印任何內容來修復它。
編輯:但是,如果您堅持在登入時回顯諸如 ascii art 之類的奇特內容,您可以保護您的命令,以if [[ $- =~ "i" ]]
檢查會話是否是互動的。
答案2
我遇到同樣的問題。該問題是由終端會話開始時的 neofetch 呼叫引起的。在我的 .bashrc 中修復了這個:
if [[ $- != *i* ]]; then
return;
else
if [ -x /usr/bin/neofetch ]; then
neofetch
fi
fi