码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Linux常用指令(八)——管道过滤


    Linux管道过滤

        • 8.1 cut命令,剪切指定范围的字段
        • 8.2 grep命令,在文本中查找匹配字符串
        • 8.3 wc命令,计数工具
        • 8.4 sort排序命令
        • 8.5 uniq去重命令
        • 8.6 sed进行文本替换过滤

    更加完整的Linux常用指令

    在Linux中,管道(pipeline)是一种非常强大的特性,它允许将一个命令的输出作为另一个命令的输入,从而实现数据流的传递和处理。通过管道,可以轻松地将多个命令组合起来,以实现复杂的数据处理任务。过滤(filtering)则是管道中常见的一种操作,用于对数据流进行筛选、转换或处理

    8.1 cut命令,剪切指定范围的字段

    # 打印 /etc/passwd 文件中以 : 为分隔符的第 1 个字段和第 6 个字段分别表示用户名和其家目录
    cut /etc/passwd -d ':' -f 1,6
    
    # 打印/etc/passwd文件中每一行的前N个字符
    # 前五个(包含第五个)
    cut /etc/passwd -c -5
    # 前五个之后的(包含第五个)
    cut /etc/passwd -c 5-
    # 第五个
    cut /etc/passwd -c 5
    # 2 到 5 之间的(包含第五个)
    cut /etc/passwd -c 2-5
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    8.2 grep命令,在文本中查找匹配字符串

    # 搜索/home/shiyanlou目录下所有包含"shiyanlou"的文本文件
    # 并显示出现在文本中的行号
    # -r:递归搜索子目录
    # -n:打印匹配项行号
    # -I:忽略二进制文件
    grep -rnI "shiyanlou" ~
    
    # 查找指定ssh服务进程
    ps -ef | grep sshd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    8.3 wc命令,计数工具

    # 显示/etc/passwd中的行数
    wc -l /etc/passwd
    # 单词数
    wc -w /etc/passwd
    # 字节数
    wc -c /etc/passwd
    # 字符数
    wc -m /etc/passwd
    # 最长行字节数
    wc -L /etc/passwd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    8.4 sort排序命令

    # 默认为字典排序
    cat /etc/passwd | sort
    
    # 按特定字段排序
    # -t参数,指定分割符为':'
    # -k参数:字段号,指定对哪个字段进行排序
    cat /etc/passwd | sort -t ':' -k 3
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    8.5 uniq去重命令

    # 将file.txt文件的内容通过管道先传递给sort排序,然后再通过uniq命令去除相邻的重复行
    cat file.txt | sort | uniq
    
    • 1
    • 2

    8.6 sed进行文本替换过滤

    # 将file.txt文件的内容通过管道传递给sed命令,sed会将所有出现的"old"替换为"new"
    cat file.txt | sed 's/old/new/g'
    
    • 1
    • 2
  • 相关阅读:
    Java Double longValue()方法具有什么功能呢?
    React 如何拿时间戳计算得到开始和结束时间戳
    探索visionOS:TabView
    java毕业设计研究生实验室综合管理系统Mybatis+系统+数据库+调试部署
    Kyligence Zen 产品体验——超好用指标平台一站式体验教程
    【BOOST C++ 13 并行编程】(3) 线程本地存储
    LeetCode 740.删除并获得点数---->打家劫舍
    CCF-CSP真题《202305-4 电力网络》思路+python,c++满分题解
    C++怎么判断windows系统是64位还是32位
    ClickHouse 如何实现数据一致性
  • 原文地址:https://blog.csdn.net/qq_38473254/article/details/134273224
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号