1、問題描述:
在Windows上,以前一直使用Secure CRT連接Linux主機進行遠程操作,使用CRT的日志功能記錄連接過程中的所有操作以及輸出。
最近(2019-8-17)使用Xshell進行連接,也打算記錄日志,但是發現記錄的日志有問題,倒不是亂碼,而是感覺Xshell記錄的日志
把Linux系統連接操作過程中所有的有顏色的內容,都換成了Linux下的顏色控制代碼,如:
echo -e "\033[32;41;1m this is echo color input test. \e[0m" 效果如下:
但是日志就會記錄echo -e "\033[32;41;1m this is echo color input test. \e[0m"這一串,而不是記錄this is echo color input test.
顯然,當我們命令行提示符有顏色,並且ls列出的內容也會自動顯示顏色,其他一些命令可能也會有顏色的輸出,記錄的都是一串串帶有控制色彩的
命令的字符,我們閱讀起來就和亂碼沒什么區別了,及其不友好,那么我們如何解決呢?請往下閱讀!!!
以下操作中對Xshell的配置最好配置“默認會話屬性”,不要單獨配置連接屬性。這里由於是演示,就不講究這些了。
2、問題模擬:
Xshell的日志配置如圖:
連接到Linux主機,做一些操作后,日志記錄的內容如下:
3、問題解決:
出現上面的問題的原因是我們記錄日志時配置記錄了“終端代碼”。
千萬不要勾選上圖中的“包括終端代碼”一項!!!
去掉勾選,我們再來嘗試連接Linux主機,做一些操作后,日志記錄的內容如下:
到此問題解決!