Команда CUT может быть использована для вывода, например, только определенных колонок из результата вывода какой-то команды или текстового файла.
Ниже приведены примеры, как можно использовать эту команду:
Допустим у нас есть вот такой файл с именами:
Вывести 1-е поле(фамилия) из файла:
$ cut -d':' -f 1 /tmp/names.txt
Avdeeva
Alekseev
Borisova
Gordeeva
Вывести 2-е и 3-е поле(фамилия) из файла:
$ cut -d':' -f 2,3 /tmp/names.txt
Irina:Vladimirovna
Sergey:Viktorovich
Elena:Vladimirovna
Larisa:Andreevna
Вывести только первые 11 символов каждой строки из файла:
$ cut -c 1-11 /tmp/names.txt
Avdeeva:Iri
Alekseev:Se
Borisova:El
Gordeeva:La
Более реальный пример. Например у нас есть файл /etc/oratab:
ORCL2:/u01/app/oracle/product/10.2.0/db_1:N
ORCL3:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL4:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL5:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL6:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL7:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL8:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL9:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL10:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL11:/u03/app/oracle/product/11.2.0/dbhome_1:N
$ cat /etc/oratab|egrep ':N|:Y'|grep -v \*|cut -f 2 -d':'|uniq
/u01/app/oracle/product/10.2.0/db_1
/u03/app/oracle/product/11.2.0/dbhome_1
Ниже приведены примеры, как можно использовать эту команду:
Допустим у нас есть вот такой файл с именами:
$ cat /tmp/names.txt
Avdeeva:Irina:Vladimirovna
Avdeeva:Irina:Vladimirovna
Alekseev:Sergey:Viktorovich
Borisova:Elena:Vladimirovna
Gordeeva:Larisa:Andreevna
$ cut -d':' -f 1 /tmp/names.txt
Avdeeva
Alekseev
Borisova
Gordeeva
Вывести 2-е и 3-е поле(фамилия) из файла:
$ cut -d':' -f 2,3 /tmp/names.txt
Irina:Vladimirovna
Sergey:Viktorovich
Elena:Vladimirovna
Larisa:Andreevna
Вывести только первые 11 символов каждой строки из файла:
$ cut -c 1-11 /tmp/names.txt
Avdeeva:Iri
Alekseev:Se
Borisova:El
Gordeeva:La
Более реальный пример. Например у нас есть файл /etc/oratab:
$ cat /etc/oratab
# This file is used by ORACLE utilities. It is created by root.sh
# and updated by the Database Configuration Assistant when creating
# a database.
# A colon, ':', is used as the field terminator. A new line terminates
# the entry. Lines beginning with a pound sign, '#', are comments.
#
# Entries are of the form:
# $ORACLE_SID:$ORACLE_HOME:<N|Y>:
#
# The first and second fields are the system identifier and home
# directory of the database respectively. The third filed indicates
# to the dbstart utility that the database should , "Y", or should not,
# "N", be brought up at system boot time.
#
# Multiple entries with the same $ORACLE_SID are not allowed.
#
#
ORCL0:/u01/app/oracle/product/10.2.0/db_1:N
ORCL1:/u01/app/oracle/product/10.2.0/db_1:NORCL2:/u01/app/oracle/product/10.2.0/db_1:N
ORCL3:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL4:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL5:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL6:/u01/app/oracle/product/10.2.0/db_1:Y
ORCL7:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL8:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL9:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL10:/u03/app/oracle/product/11.2.0/dbhome_1:N
ORCL11:/u03/app/oracle/product/11.2.0/dbhome_1:N
И задача: Вывести только пути к ORACLE_HOME, причем не повторяющиеся:
$ cat /etc/oratab|egrep ':N|:Y'|grep -v \*|cut -f 2 -d':'|uniq
/u01/app/oracle/product/10.2.0/db_1
/u03/app/oracle/product/11.2.0/dbhome_1
0 коммент.:
Отправить комментарий