In order to complement the selection field list use option –complement. Select All Fields Except the Specified Fields The following example doesn’t display any output, as the cut command didn’t find any lines that has | (pipe) as delimiter in the /etc/passwd file. $ grep "/bin/bash" /etc/passwd | cut -d'|' -f1īala:x:1000:1000:bala,:/home/bala:/bin/bashīut, it is possible to filter and display only the lines that contains the specified delimiter using -s option. In the following example, we’ve specified the delimiter as | (pipe), and cut command simply displays the whole line, even when it doesn’t find any line that has | (pipe) as delimiter. In our /etc/passwd example, if you pass a different delimiter other than : (colon), cut will just display the whole line. Select Fields Only When a Line Contains the Delimiter In this example, we are selecting field 1 through 4, 6 and 7 $ grep "/bin/bash" /etc/passwd | cut -d':' -f1-4,6,7īala:x:1000:1000:/home/bala:/bin/bash 6. To display the range of fields specify start field and end field as shown below. Below example displays username and home directory of users who has the login shell as “/bin/bash”. You can also extract more than one fields from a file or stdout. The file $ cut -d':' -f1 /etc/passwdīala 5. In this case, the 1st field is the username. The following example displays only first field of each lines from /etc/passwd file using the field delimiter : (colon). The option -f specifies which field you want to extract, and the option -d specifies what is the field delimiter that is used in the input file. Instead of selecting x number of characters, if you like to extract a whole field, you can combine option -f and -d. Ls command to list out files and directories with its attributes. The entire line would get printed when you don’t specify a number before or after the ‘-‘ as shown below. This example extracts 8 characters from the beginning of each line from test.txt file. The following specifies only the end position after the ‘-‘. $ cut -c3- test.txtĬommand to list out files and directories with its attributes. This example extracts from 3rd character to end of each line from test.txt file.
![cut cut](https://1.bp.blogspot.com/-Rpl3h8LOyMw/XRNRyfoCXwI/AAAAAAAAFOw/v_Zt1SJwPd8BYWswRYkfAxq0XmfrYwvegCLcBGAs/s1600/Vcut.jpg)
The following specifies only the start position before the ‘-‘. Select Column of Characters using either Start or End PositionĮither start position or end position can be passed to cut command with -c option. The following example extracts first 3 characters of each line from a file called test.txt $ cut -c1-3 test.txt Range of characters can also be extracted from a file by specifying start and end position delimited with. The following example displays 2nd character from each line of a file test.txt $ cut -c2 test.txtĪs seen above, the characters a, p, s are the second character from each line of the test.txt file. To extract only a desired column from a file use -c option. $ cat test.txtĬat command for file oriented operations.Ĭp command for copy files or directories. This tutorial provides few practical examples of cut command that you can use in your day to day command line activities.įor most of the example, we’ll be using the following test file. You can use this command to extract portion of text from a file by selecting columns. Linux command cut is used for text processing.