Eu posso usar o comando "script" para gravar uma sessão interativa na linha de comando. No entanto, isso inclui todos os caracteres de controle e códigos de cores. Posso remover caracteres de controle (como backspace) com "col -b", mas não consigo encontrar uma maneira simples de remover os códigos de cores.
Observe que eu quero usar a linha de comando da maneira normal, então não quero desativar as cores lá - só quero removê-las da saída do script. Além disso, eu sei que posso brincar e tentar encontrar um regexp para consertar as coisas, mas espero que exista uma solução mais simples (e mais confiável - e se houver um código que eu não conheço quando desenvolvo o regexp?).
Para mostrar o problema:
spl62 tmp: script Script iniciado, arquivo digitado spl62 lepl: ls add-licence.sed build-example.sh commit-test push-docs.sh add-licence.sh build.sh delete-licence.sed setup.py asn build-test.sh delete-licence.sh src build-doc.sh limpo doc-src test.ini spl62 lepl: exit Script feito, o arquivo é datilografado spl62 tmp: cat -v datilografado Script iniciado em Qui 09 Jun 2011 09:47:27 CLT spl62 lepl: ls ^ M ^ [[0m ^ [[00madd-licence.sed ^ [[0m ^ [[00; 32mbuild-example.sh ^ [[0m ^ [[00mcommit-test ^ [[0m ^ [[00; 32mpush-docs.sh ^ [[0m ^ M ^ [[00; 32madd-licence.sh ^ [[0m ^ [[00; 32mbuild.sh ^ [[0m ^ [[00mdelete-licence.sed ^ [[0m ^ [[00msetup.py ^ M] M ^ [[01; 34masn ^ [[0m ^ [[00; 32mbuild-test.sh ^ [[0m ^ [[00; 32mdelete-licence.sh ^ [[0m ^ [[01; 34msrc ^ [[0m ^ M ^ [[00; 32mbuild-doc.sh ^ [[0m ^ [[00; 32mclean ^ [[0m ^ [[01; 34mdoc-src ^ [[0m ^ [[00mtest.ini ^ [[0m ^ M spl62 lepl: exit ^ M Script realizado em Qui 09 Jun 2011 09:47:29 CLT spl62 tmp: col -b <tipo de letra Script iniciado em Qui 09 Jun 2011 09:47:27 CLT spl62 lepl: ls 0m00madd-licence.sed0m 00; 32mbuild-example.sh0m 00mcommit-test0m 00; 32mpush-docs.sh0m 00; 32madd-licence.sh0m 00; 32mbuild.sh0m 00mdelete-licence.sed0m 00msetup.py0m 01; 34masn0m 00; 32mbuild-test.sh0m 00; 32mdelete-licence.sh0m 01; 34msrc0m 00; 32mbuild-doc.sh0m 00; 32mclean0m 01; 34mdoc-src0m 00mtest.ini0m spl62 lepl: exit Script realizado em Qui 09 Jun 2011 09:47:29 CLT