• Linux-管道、环境变量、常用命令


    管道

    概念

    管道的作用类似于文件重定向,可以将前一个命令的stout做为下一个命令的stdin

    要点

    • 管道命令进处理stdout,会忽略stderr
    • 管道右边的命令必须能接受stdin
    • 多个管道命令可以串联

    与文件重定向的区别

    • 文件重定向左边是命令右边是文件
    • 管道左右两边都是命令,左边有stdout,右边有stdin

    环境变量

    概念

    Linux中会有很多环境变量来记录配置信息
    环境变量类似于全局变量,可以被各个进程访问到。我们可以通过修改环境变量来方便地修改系统配置

    查看

    env  # 显示当前用户的变量
    set  # 显示当前shell的变量,包括当前用户的变量;
    export  # 显示当前导出成用户变量的shell变量
    
    • 1
    • 2
    • 3

    image
    输出某个环境变量的值

    echo $HOME
    
    • 1

    常用命令

    查看系统状况

    • top:查看所有进程的信息(Linux的任务管理器)
      • 打开后,输入M:按使用内存排序
      • 输入P:按使用CPU排序
      • 打开后,输入q:退出
    • df -h:查看硬盘使用情况
    • free -h:查看内存使用情况
    • du -h: 查看当前目录中每个文件占用的内存空间
      • du -sh:查看当前目录占用总内存空间
    • ps aux:查看所有进程,很多时候都是用来找进程然后杀进程的
    • kill -9 pid:杀死pid的进程
    • netstat -nt:查看所有网络连接
    • w:列出当前登录用户
    • ping www.baidu.com:检查是否联网

    权限

    • ll:可以查看文件的权限
      第一个d是文件夹
      image
      image
    • chmod +x xxx:给xxx加上可执行权限
    • chmod -x xxx:给xxx去掉可执行权限
    • chmod 777 xxx:将xxx的权限改为777,每一个数字表示一个三位二进制数,0表示没有这个权限,1表示有这个权限

    文件查找

    1. find /path/to/directory/ -name '*.py':搜索某个文件路径下的所有*.py文件
    2. gre xxx:可以从stdin中读取若干行数据,如果某行包含xxx,则输出改行,否则忽略该行
    3. ag xxx:搜索当前目录下的所有文件,检索xxx字符串
      image
    4. wc xxx:统计文件的信息
      • wc -l:统计行数
      • wc -w:统计单词数
      • wc -c:统计字节数
      • wc ./*:wc可以传多个文件
        image
    5. tree:展示当前目录的文件结构
      • tree /path/to/directory/:展示某个目录的文件结构
      • tree -a:展示隐藏文件
        eg:
    find . -name "*.py" | xargs cat | wc -l
    
    • 1

    用户相关

    history:查看用户历史记录,保留最近的2000条。内容存放在~/.bash_history

    工具

    1. md5sum:计算md5哈希值,只要我们修改了文件一丁点,md5的值就会不同,甚至不能点开,数学建模也用到md5了,有很好的加密性
      image

    2. time command:执行该条命令的时间

    3. ipython:打开python的解释器,exit是退出ipython
      image

    4. tar -zcvf xxx.tar.gz /path/to/file/*:压缩文件
      tar -zxvf xxx.tar.gz / patj/to/file/*:解压缩
      image

    5. diff xxx yyy:查找文件xxx和yyy的不同点,两个文件完全一样不给任何提示,当文件不一样时会给出不一样的地方

    6. sudo command:以root权限执行command

    7. apt-get install xxx:安装软件

    8. pip install xxx --user --upgrade:python安装包

  • 相关阅读:
    3.10、以太网交换机的生成树协议 STP
    一个程序员,一生必须掌握的几种算法
    windows文件和目录相关命令
    Mockito 简单示例
    WebSocket实战之二协议分析
    火山引擎 ByteHouse:如何提升 18000 节点的 ClickHouse 可用性?
    2021Java面试题库大全(内部资源)
    Asoc codec bringup总结
    redis入门-1
    专注效率提升「GitHub 热点速览 v.22.36」
  • 原文地址:https://blog.csdn.net/weixin_61426225/article/details/133981006