Я использую Mac ssh'ing в безголовый ящик RedHat, и мне нужно создать список файлов для последующей программы.
Когда я перенаправляю вывод ls
, созданный файл содержит несколько escape-символов, и мои нижестоящие сценарии не могут правильно прочитать имена файлов. Когда я создаю и cat
файл, все выглядит нормально:
sdt5z@franklin:~/cufflinks$ ls *.pbs
01_SL8426.pbs 03_SL8428.pbs 09_SL8891.pbs
02_SL8427.pbs 04_SL8429.pbs
sdt5z@franklin:~/cufflinks$ ls *.pbs > myfiles.txt
sdt5z@franklin:~/cufflinks$ cat myfiles.txt
01_SL8426.pbs
02_SL8427.pbs
03_SL8428.pbs
04_SL8429.pbs
09_SL8891.pbs
Но если я открою файл в vim, он будет выглядеть следующим образом (все маленькие символы ^[[
и ^[
окрашены в синий цвет в моем эмуляторе терминала):
1 ^[[0m^[[0m01_SL8426.pbs^[[0m
2 ^[[0m02_SL8427.pbs^[[0m
3 ^[[0m03_SL8428.pbs^[[0m
4 ^[[0m04_SL8429.pbs^[[0m
5 ^[[0m09_SL8891.pbs^[[0m
6 ^[[m
~
~
~
~
Запуск команды file показывает, что этот файл имеет escape-последовательности.
sdt5z@franklin:~/cufflinks$ file myfiles.txt
myfiles.txt: ASCII text, with escape sequences
Мой вопрос: как я могу очень просто ls файлы, перенаправить их в файл, без каких-либо escape-символов? Что вызывает это в первую очередь?
Спасибо.
myfiles.txt: текст ASCII с escape-последовательностями