Linux 学习

145 阅读3分钟

Linux 学习

一、Linux命令

1.1 文件目录类指令

1.1.1 MV 命令:移动文件与目录或重命名

  • mv a.txt b.txt :重命名
  • mv /temp/movefile /targetFolder :移动

1.1.2 cat 命令:查看文件内容

  • -n :显示行号

1.1.3 more 指令:用于查看文件,以全屏幕的方式

  • 语法: more 要查看的文件
  • 空白键(space):向下翻页
  • Enter:向下翻行
  • q:立即离开
  • Ctrl + F :向下滚动一屏
  • Ctrl + B :返回上一屏
  • = :输出当前行行号
  • :f :输出文件名和当前行行号

1.1.4 less 指令:分屏查看文件内容,比more功能更强(懒加载)

  • 语法:less 要查看的文件 image.png

1.1.5 echo 指令 :输出内容到控制台

  • echo $HOSTNAME :输出主机名
  • echo $PATH : 输出环境变量

1.1.6 head 指令:用于查看文件开头(默认头10行)

  • head 文件
  • head -n 5 文件

1.1.7 tail 指令:输出文件尾部内容(默认尾10行)

  • tail 文件
  • tail -n 5 文件
  • tail -f 文件 : 实时追踪文档的所有更新

1.1.8 > 指令 和 >>指令

  • > 指令:输出内容到文件,并且覆盖内容
  • >> 指令:追加

1.1.9 ln 指令:软连接也叫符号链接,类似于windows里的快捷方式

案例1:在/home目录下创建软连接 myroot,连接到/root目录

案例 2:删除软连接 myroot

ln -s /root/ /home/myroot
rm /home/myroot

1.1.10 history 指令:查看已经执行过的命令

  • history 10:显示最近10条
  • !5 :执行曾经执行过的第5条指令

1.2 时间日期类

1.2.1 date 指令 :显示当前日期

  • date :显示当前时间
  • date "+ %Y" : 显示年
  • date "+ %m" : 显示月
  • date "+ %d" : 显示日
  • date "+%Y-%m-%d %H:%M:%S" :显示年月日时分秒

1.2.2 date 指令: 设置当前日期

  • date -s 字符串时间
  • 设置系统当前时间:date -s "2022-11-03 20:02:10"

1.2.3 cal 指令:查看日历

  • cal 2022 :查看2022整年日历

1.3 搜索查找类指令

1.3.1 find 指令

从指定目录递归其各个子目录,将满足条件的显示在终端

  • name<查询方式>:按照指定文件名查找模式查找文件
  • user<用户名>:查找属于指定用户名的文件
  • size<文件大小>:按照大小查找文件
  • find /home -name hello.txt :查找/home下面的hello.txt文件
  • find /opt -user liyongqi
  • find / -size +200M(+n 代表大于,-n 小于,n 等于)
  • ls -lh / ll -h:显示文件以及大小

1.3.2 locate 指令

会建立自己的搜索数据库,不会搜索整个系统

  • 特别说明:使用locate检索时,需要先用updatedb指令创建数据库
  • locate 文件名

1.3.3 grep 指令 和 管道符 |

表示将前一个命令的处理结果输出传递给后一个命令处理

  • 语法: grep [选项] 查找内容 源文件
  • 常用选项 image.png
  • cat /home/hello.txt | grep -n "yes"

1.4 压缩和解压类指令

1.4.1 gzip/gunpzip 指令

  • gzip 文件
  • gunzip 文件.gz

1.4.2 zip / unzip 指令

  • zip [选项] xxx.zip
    • -r :递归压缩,压缩文件名
  • unzip [选项] xxx.zip
    • -d<目录>:指定解压目录

1.4.3 tar 指令 :打包出来的文件后缀 .tar.gz

  • tar [选项] xxx.tar.gz 打包内容
  • 选项说明
    image.png
  • tar -zcvf pc.tag.gz pig.txt cat.txt

案例: 将a目录下的文件,解压到b目录

  • tar -zxvf /home/a.tag.gz -C /opt/tmp

1.5 Linux组基本介绍

在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。

  1. 所有者
  2. 所在组
  3. 其它组
  4. 改变用户所在的组

1.5.1 chgrp 指令:修改文件组

  • chgrp 组名 文件名
  • chgrp fruit orange.txt
  • usermod -g fruit lyq

1.6 权限介绍

案例:-rwxrw-r-- 1 root root 1213 Feb 2 09:39 abc image.png

1.6.1 chmod 指令:修改权限

  • u:所有者、g:所有组、o:其他人、a:所有人(u、g、o的总和)
  • +、-、= 变更权限
  • chmod u=rwx,g=rx,o=x 文件/目录名
  • chmod o+w 文件/目录名
  • chmod a-x 文件/目录名

1.6.2 chown 修改文件所有者

  • chown newowner 文件/目录 改变所有者
  • chown newowner:newgroup 新的文件 新的组
  • -R :递归改变所有者