我正在尝试使用script
命令来保存一些提示和输出。
在unix上,输出看起来是正确的。
Script started on Sun 11 Sep 2016 06:34:13 PM EDT
[name@serv ~]$ mkdir myrepos
[name@serv ~]$ cd myrepos
[name@serv myrepos]$ svnadmin create testrepo
[name@serv myrepos]$ cd ../project
但是,当我将文件FTP到Windows时,我得到:
Script started on Sun 11 Sep 2016 06:34:13 PM EDT
]0;name@serv:~[?h[name@serv ~]$ svn[K[K[Kmkdir myre[K[Krepos
]0;name@serv:~[name@serv ~]$ cd myrepos
]0;name@serv:~/myrepos[name@serv myrepos]$ svnadmin create testrepo[K[K[K[
记事本显示上面的Ks和特殊字符缺少矩形。
Notepad ++不仅向我显示Ks,还向我显示随机ESC
,BEL
和BS
块。
我希望它像以下一样简单:
unix2dos original.txt windows.txt
但这告诉我unix2dos: problems converting file windows.txt
运行iconv -f UTF-8 -t ISO-8859-1 in.txt > out.txt
找到here也没有帮助我。此时,我迷路了。
感谢您的帮助。
答案 0 :(得分:2)
这不是那么简单,但你可以在Unix端转换文件,例如,使用sed
。 unix2dos
和iconv
解决了与此不同的问题,无法帮助解决问题。
有几个相关的答案,但我更喜欢我写的回答Can I programmatically “burn in” ANSI control codes to a file using unix utils?的脚本。
在one of my webpages上简要介绍了该脚本,并附有一些示例。它可以通过gzip'd tarfile。
从该页面下载从tarball开始...
tar xf misc-scripts.tar.gz
mv misc-scripts-2*/script2log .
rm -rf misc-scripts-2*
(除非您对其他脚本感兴趣:tarball只是一个快照,文件到达给定日期,并扩展到以该日期命名的目录)。
要使用它,请将script2log
放在路径中,或者只运行它:
./script2log typescript >plaintext.log
或
./script2log -o plaintext.log typescript