Вырезать столбец из списка

5

Как я могу вырезать второй столбец из следующего списка из терминала?

56    267  
57    235  
58    255  
59    283 
    
задан user15864 23.10.2013 в 07:41
источник

4 ответа

6

Если данные находятся в файле test.txt, то awk '{ print }' test.txt сделает это.     

ответ дан user25656 23.10.2013 в 08:28
источник
1

Если пробел между столбцами является символом Tab , тогда

cut -f 2

сделает то, что вы хотите. Если они являются пробелами, сначала сжимайте их на одну вкладку:

tr -s \  \t | cut -f 2
    
ответ дан zwets 23.10.2013 в 09:12
0

Попробуйте:

sed -e "s/[[:space:]]\+/\t/g" filename | cut -f2

Первая команда ( sed ) заменит все символы пробела на одну вкладку, и результат будет передан второй команде ( cut ), которая выберет второе поле из каждой строки.

См. man cut и man sed для получения дополнительной информации.

    
ответ дан Radu Rădeanu 23.10.2013 в 08:55
-1

Если ваши данные были разделены запятой, ваша операция будет намного проще:

[email protected]:~$ cat data.txt
123,456
123,789
123,567
[email protected]:~$ cut -d, -f1,1  data.txt
123
123
123
    
ответ дан Ten-Coin 23.10.2013 в 08:40