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

发布时间 2023-10-20 18:40:38作者: cxy8

管道

概念

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

要点

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

与文件重定向的区别

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

环境变量

概念

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

查看

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

image
输出某个环境变量的值

echo $HOME

常用命令

查看系统状况

  • 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

用户相关

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

工具

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