Filtering IO/File
head
The head command in Linux is used to display the first few lines of a text file or the output of a command.
head file.txt // display the first 10 lines of the file "file.txt"
head -n 20 file.txt // display the first 20 lines of the file "file.txt"
head -c 100 file.txt // display the first 100 bytes of the file "file.txt"
head -q file1.txt file2.txt file3.txt // display the first 10 lines of each of the three files, without printing their namestail
The tail command in Linux is used to display the last few lines of a text file or the output of a command.
tail file.txt // display the last 10 lines of the file "file.txt"
tail -n 20 file.txt // display the last 20 lines of the file "file.txt"
tail -f logfile.txt // continuously display the last few lines of the file "logfile.txt" as new lines are added to it
tail -q file1.txt file2.txt file3.txt // display the last 10 lines of each of the three files, without printing their namesgrep
The grep command in Linux is used to search for a specific pattern or regular expression in a file or a stream of data.
grep 'pattern' file.txt // Search for "pattern" in "file.txt"
grep -i 'pattern' file.txt // Search for "pattern" in "file.txt", ignoring case
grep -w 'pattern' file.txt // Search for the whole word "pattern" in "file.txt"
grep -v 'pattern' file.txt // Search for lines that do not contain "pattern" in "file.txt"
grep -c 'pattern' file.txt // Count the number of lines that contain "pattern" in "file.txt"
grep -n 'pattern' file.txt // Show the line numbers of the lines that contain "pattern" in "file.txt"
grep -r 'pattern' /path/to/dir // Recursively search through all files and directories in /path/to/dir for "pattern"pipe
The pipe command in Linux can be used to chain together multiple commands to perform more complex operations on data. Here's an example of how to use the pipe command with the head and tail commands:
For example, let's say you have a file named data.txt with 100 lines of text. You want to extract lines 21 to 30 from this file. You can do this using the following command:
cat data.txt | head -n 30 | tail -n 10find
The find command in Linux is used to search for files and directories in a directory hierarchy based on various criteria, such as name, type, size, modification time, etc. It is a very powerful command that can perform complex searches.
find . -type f -name '*.txt' //all files with the .txt extension in the current directory and its subdirectories.
find . -type d -name "backup" //all directories in the current directory and its subdirectories that have the name backup:more
The more command in Linux is used to display the contents of a file one page at a time. It is often used to display large files or files that are too long to fit on a single screen.
more filenameless
The less command in Linux is similar to the more command, but it provides more advanced features and is generally considered a more powerful pager utility. Like more, less is used to display the contents of a file one page at a time.
less filename.txtcut
The cut command in Linux is used to extract sections from each line of a file. It is particularly useful for extracting specific columns of data from a file.
cut -d' ' -f2 filename.txtsort
The sort command in Linux is used to sort the contents of a file or the output of a command in alphabetical, numerical, or other specified order.
sort filename.txt //sort the contents of a file in alphabetical order
sort -r filename.txt //sort the contents of a file in reverse orderbaLast updated