我想將控制檯輸出的ansi色碼轉換爲HTML。我有一個腳本來做到這一點,但我似乎無法讓它解析節點js內的字符串。我曾嘗試過JSON.stringify它也包括特殊字符,但它不工作。不正確的字符串解析
forever list
[32minfo[39m: Forever processes running
[90mscript[39m [37mforever[39m [37mpid[39m [37mid[39m
[90mdata[39m: [37m [39m [37muid[39m [90mcommand[39m
我從節點js中的ssh2shell獲得這樣的輸出。我有一個腳本: https://github.com/pixelb/scripts/blob/master/scripts/ansi2html.sh
這是應該將上述轉換爲html並添加適當的顏色代碼。它正常工作正常終端輸出爲例:
npm install --color=always | ansi2html.sh > npminstall.html
這是在Linux機器上輸出到文件的原始輸出。看起來JS字符串在console.log中顯示時缺少這些轉義符,但它們也缺少換行符。也許它是因爲我把它們直接連接到字符串並刪除特殊字符?
total 24
-rwxr-xr-x 1 admin admin 17002 May 13 02:52 ^[[0m^[[38;5;34mansi2html.sh^[[0m
drwxr-xr-x 4 admin admin 4096 May 13 00:00 ^[[38;5;27mgit^[[0m
-rw-r--r-- 1 admin admin 0 May 13 02:57 ls.html
希望這其中的一些是有道理的。
謝謝
從哪裏得到ANSI字符串?一份文件?標準輸入?在代碼中進行硬編碼? – slebetman