Установка "sl". Choo choo! http://www.tkl.iis.u-tokyo.ac.jp/~toyoda/index_e.html
==== ________ ___________
_D _| |_______/ \__I_I_____===__|_________|
|(_)--- | H\________/ | | =|___ ___| _________________
/ | | H | | | | ||_| |_|| _| \_____A
| | | H |__--------------------| [___] | =| |
| ________|___H__/__|_____/[][]~\_______| | -| |
|/ | |-----------I_____I [][] [] D |=======|____|________________________|_
__/ =| o |=-~~\ /~~\ /~~\ /~~\ ____Y___________|__|__________________________|_
|/-=|___|| || || || |_____/~\___/ |_D__D__D_| |_D__D__D_|
\_/ \__/ \__/ \__/ \__/ \_/ \_/ \_/ \_/ \_/
"SL (Паровоз) натыкается на Ваш терминал при вводе "sl", поскольку Вы означали вводить 'ls'. Это - просто команда шутки, и не полезное вообще. Поместите двоичный файл в/usr/local/bin".
При вызове без любых опций, column
делает каждый разграничил строки, выравниваются к ближайшему СТОЛБЦУ ПОЗИЦИИ ТАБУЛЯЦИИ. В терминале, который обычно находится на каждом 8-м символьном столбце.. Взгляните на этот пример:
Создайте файл (ztxt
) содержа некоторый символ табуляции \t
разграниченные строки, распространенные по 3 строкам, которые заканчиваются символом новой строки \n
:
aaa1\taaaaaaaaaaaaaa2\taaaaaaaaaaaaaaaaaaa3\taaa4
bbbbbbb1\tbbb2\tbbb3
ccc1\tccc2
Вывод: column ztxt
- отлично выровненный к ближайшей ПОЗИЦИИ ТАБУЛЯЦИИ
aaa1 aaaaaaaaaaaaaa2 aaaaaaaaaaaaaaaaaaa3 aaa4
bbbbbb1 bbb2 bbb3
ccc1 ccc2
| | | | | | |
|-------|-------|-------|-------|-------|-------|
Для выравнивания LSH каждого последовательного поля к тому выше его необходимо использовать -t
опция, например. column -t ztxt
aaa1 aaaaaaaaaaaaaa2 aaaaaaaaaaaaaaaaaaa3 aaa4
bbbbbb1 bbb2 bbb3
ccc1 ccc2
Если все Ваши данные находятся в одном длинном потоке без каких-либо повреждений новой строки, Вы можете uss фильтр представлять их; например, каждые 4 поля. sed
может сделать это с этой командой.
sed -re 's/(([^\t]*\t){3}[^\t]*)\t/\1\n/g'
По умолчанию, column
команда объединит несколько смежных разделителей в единственный разделитель.. Обслуживать это в sed
фильтр, этому также нужно:
sed -re 's/\t+/\t/g;'
Так команда для разделения непрерывного потока разграниченных вкладкой строк, как каждая 4-я строка:
<ztxt sed -re 's/\t+/\t/g;s/(([^\t]*\t){3}[^\t]*)\t/\1\n/g' | column -t
Вывод такого входного потока contionuous (использование исходного демонстрационного входа, но измененный путем замены исходных новых строк символами табуляции - это должно все еще сохранить свое запаздывание \n):
aaa1 aaaaaaaaaaaaaa2 aaaaaaaaaaaaaaaaaaa3 aaa4
bbbbbbb1 bbb2 bbb3 ccc1
ccc2
Если ls
вывод искажен, он указывает, что существуют непечатаемые символы в одних или нескольких именах файлов. Я поэтому рекомендую всегда использовать опцию -q
с ls
.
Любые непечатаемые символы будут затем распечатаны как вопросительный знак.
Поэтому попробуйте:
ls -Cq
ls
вывод не был искажен; это было это по умолчанию column
выравнивался к позициям табуляции, не в столбцах.
– underscore_d
28.01.2018, 22:14
Проблема со столбцом состоит в том, что он разделяет на \s +, я не вижу, как заставить его разделить на единственной вкладке. Я записал этот намного более гибкий сценарий для решения этой проблемы, которую кто-либо свободен использовать:
http://itmat.greg.s3.amazonaws.com/display.pl.gz
Вот полное использование:
-------------------------------------------------------------------------- | This script displays tab delimited text in properly aligned columns. | | | | Usage: perl display.pl [num lines] [options] | | | | Where is tab delimited. | | | | If is followed by a positive integer N, only the first N lines | | will be returned. | | | | If lines are long, this script works bests if piped to "less -S". | | | | [options] | | | | -noheader : A header line is assumed by default. | | | | -nodots : By default if a column is wide and an entry in that column | | is short, dots are put after it to help line things up. | | Use this option to just print spaces, no dots. | | | | -dotcols : Use this to specify specific columns to have dots | | (see the -nodots option). must be a comma | | separated list of positive integers w/o whitespace. | | | | -cols : Use this to specify a subset of columns to output. | | is a comma separated list of positive integers | | and/or spans of positive integers. Examples of valid | | lists are: 4,6,12 or 4-10 or 1-4,12,15,4-7. Columns | | can be repeated and don't have to be in numerical order. | | | | NOTE: This script was hacked from a much more complicated script, so | | the code is full of all kinds of irrelevant stuff. | --------------------------------------------------------------------------
-s'[tab]'
не работают на Вас? Где, как обычно, [tab]
средства или вводят литеральную вкладку в Вашем сценарии или нажимают Ctrl+V, Tab при приглашении оболочки. непечатаемые символы
– underscore_d
28.01.2018, 22:12
Показать непечатаемые символы (как C управляющие коды каждый раз, когда возможный) в Вашем ls
произведите Вас, также может использовать -b
опция к ls
команда:
ls -Cb | grep -v '\.pyc$' | column -t
Поскольку несколько разделителей укусили. Раздражающе-n опция только доступна в Debian, который обработал несколько разделителей.
column -t -n <file>
ls * -1 |column -t
сбои ужасно? в моем случае, с помощью столбца или нет, дают тот же вывод (на один столбец). Я пытался использоватьcolumn
в течение долгого долгого времени и это никогда не работало правильно :(. Интересно, существуют ли некоторыеcolumn
альтернатива, что мы можем зафиксировать ширину столбца даже с потерей отображенных данных, чтобы наконец иметь фактический симпатичный взгляд и легкий считать вывод. Моя последняя попытка будет состоять в том, чтобы кодировать некоторый сценарий, чтобы сделать весь этот:/ – Aquarius Power 02.12.2015, 17:34