How to use pipes | in Linux?
In Linux, the pipeline character "|" is used to use the output of the previous command as the input of the next command, realizing the processing of data in series by multiple commands. 1. The basic usage is to connect two commands, such as ps aux | grep "ssh", which means passing the result of ps aux to grep for filtering; 2. Multi-level pipelines can connect multiple commands in series to form a data pipeline, such as cat data.txt | sort | uniq | wc -l, which complete reading, sort, deduplication and statistics in turn; 3. The pipeline is often used in combination with grep, sort, uniq, awk, wc and other commands, such as counting the number of processes or analyzing the frequency of historical commands; 4. Note when using: the pipeline only processes standard output, and the error output needs to be merged with 2>&1. The failure of the command will affect subsequent execution. The nesting should not be too deep and can be combined with xargs to improve flexibility.

In Linux, | (pipeline character) is a very practical tool that allows you to directly use the output of one command as input to another command. Simply put, it is "the result of the previous command is handed over to the next command to handle." This mechanism allows multiple commands to be connected in series to complete more complex tasks.

1. Basic usage: connect two commands
The easiest way to use is to connect two commands with | . for example:
ps aux | grep "ssh"
The meaning of this command is: first run ps aux to view all running processes, and then pipe the result to grep "ssh" to filter out the lines containing "ssh".

Common scenarios:
- Filter keywords when viewing logs
- Statistics the number of files or lines
- Sorting, deduplication and other operations on command results
2. Multi-level pipeline: concatenate multiple commands
You can string multiple commands together to form a "data processing pipeline". For example:

cat data.txt | sort | uniq | wc -l
The purpose of this command is:
- Read the
data.txtfile content - Sort by alphabetical order
- Remove duplicate rows
- Finally count how many rows are left
Tip: Not all commands can be connected in series like this. Make sure that the output format of the previous command is the input format that the subsequent command can accept.
3. Use it in conjunction with common commands
Pipelines are often used with the following commands to combine them with very powerful functions:
-
grep: filter specific content -
sort: sort -
uniq: Go to the heavy -
awk/cut: Extract fields -
wc: count row count, word count, etc. -
less/more: View on page
For example, check the number of processes running in the current system:
ps aux | wc -l
For example, find out the first few commands that are most commonly used (combined with history):
history | awk '{print $2}' | sort | uniq -c | sort -nr | head -n 104. Precautions and tips
Although the pipeline is very useful, there are several points to note:
- The pipeline only processes standard output (stdout). If you need to handle error messages (stderr), use
2>&1to merge the output. - If the command execution fails, the subsequent command may not work as expected.
- Do not over-neck, otherwise it will reduce readability.
- It can be used with
xargsto achieve more flexible operations.
Basically that's it. Pipelines are one of the most basic and attractive features in the Linux command line. Mastering its use will greatly increase your efficiency in daily operation and maintenance or development.
The above is the detailed content of How to use pipes | in Linux?. For more information, please follow other related articles on the PHP Chinese website!
Hot AI Tools
Undress AI Tool
Undress images for free
Undresser.AI Undress
AI-powered app for creating realistic nude photos
AI Clothes Remover
Online AI tool for removing clothes from photos.
Clothoff.io
AI clothes remover
Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!
Hot Article
Hot Tools
Notepad++7.3.1
Easy-to-use and free code editor
SublimeText3 Chinese version
Chinese version, very easy to use
Zend Studio 13.0.1
Powerful PHP integrated development environment
Dreamweaver CS6
Visual web development tools
SublimeText3 Mac version
God-level code editing software (SublimeText3)
The Ultimate Guide to High-Performance Gaming on Linux
Aug 03, 2025 am 05:51 AM
ChoosePop!_OS,Ubuntu,NobaraLinux,orArchLinuxforoptimalgamingperformancewithminimaloverhead.2.InstallofficialNVIDIAproprietarydriversforNVIDIAGPUs,ensureup-to-dateMesaandkernelversionsforAMDandIntelGPUs.3.EnabletheperformanceCPUgovernor,usealow-latenc
What are the main pros and cons of Linux vs. Windows?
Aug 03, 2025 am 02:56 AM
Linux is suitable for old hardware, has high security and is customizable, but has weak software compatibility; Windows software is rich and easy to use, but has high resource utilization. 1. In terms of performance, Linux is lightweight and efficient, suitable for old devices; Windows has high hardware requirements. 2. In terms of software, Windows has wider compatibility, especially professional tools and games; Linux needs to use tools to run some software. 3. In terms of security, Linux permission management is stricter and updates are convenient; although Windows is protected, it is still vulnerable to attacks. 4. In terms of difficulty of use, the Linux learning curve is steep; Windows operation is intuitive. Choose according to requirements: choose Linux with performance and security, and choose Windows with compatibility and ease of use.
Understanding RAID Configurations on a Linux Server
Aug 05, 2025 am 11:50 AM
RAIDimprovesstorageperformanceandreliabilityonLinuxserversthroughvariousconfigurations;RAID0offersspeedbutnoredundancy;RAID1providesmirroringforcriticaldatawith50�pacityloss;RAID5supportssingle-drivefailuretoleranceusingparityandrequiresatleastthre
Linux how to enable and disable services at boot
Aug 08, 2025 am 10:23 AM
To manage the startup of Linux services, use the systemctl command. 1. Check the service status: systemctlstatus can check whether the service is running, enabled or disabled. 2. Enable the service startup: sudosystemctlenable, such as sudosystemctlenablenginx. If it is started at the same time, use sudosystemctlenable--nownginx. 3. Disable the service startup: sudosystemctldisable, such as sudosystemctldisablecups. If it is stopped at the same time, use sudosystemctldisabl
Setting up a Development Environment on Linux for Python
Aug 03, 2025 am 12:26 AM
InstallPythonandessentialtoolsusingyourdistribution’spackagemanager,ensuringpython3-venvandpython3-devareincludedforenvironmentisolationandCextensions.2.Alwaysusevirtualenvironmentsbyrunningpython3-mvenvmyproject_envandactivatewithsourcemyproject_env
How to set up a firewall in Linux
Aug 22, 2025 pm 04:41 PM
UsefirewalldoriptablestosecureLinux;firewalldisuser-friendlywithzonesandservices,idealforCentOS/RHEL/Fedora,whileiptablesoffersgranularcontrolforDebian/Ubuntu.Enablefirewalld:sudosystemctlstartfirewalld,allowserviceslikeSSHwith--add-service=ssh,orope
Linux how to list all running processes
Aug 08, 2025 am 06:42 AM
Usepsauxforacompletesnapshotofallrunningprocesses,showingdetailedinformationlikeUSER,PID,CPU,andmemoryusage.2.Usetoporhtopforreal-timemonitoringofprocesseswithdynamicupdates,wherehtopoffersamoreintuitiveinterface.3.UsepgreporpidoftoquicklyfindthePIDs
How to clean up your Linux system
Aug 22, 2025 am 07:42 AM
Removeunusedpackagesanddependencieswithsudoaptautoremove,cleanpackagecacheusingsudoaptcleanorautoclean,andremoveoldkernelsviasudoaptautoremove--purge.2.Clearsystemlogswithsudojournalctl--vacuum-time=7d,deletearchivedlogsin/var/log,andempty/tmpand/var


