Linux简介与常用命令

该文为博主在学习了B站的尚硅谷Linux课程之后,结合提供的笔记资料进行的总结,以下附上课程链接:
https://www.bilibili.com/video/BV1dW411M7xL

介绍篇

  • Linux简介
    Linux是系统内核,不同厂商基于此做了不同的包装,形成了发行版。如我们熟知的ubuntn、CentOSE等,就是以Linux为内核,做了不同包装而形成的。图源尚硅谷

  • 与较为主流的windows系统进行对比:
    图源尚硅谷

  • Linux的目录结构
    ①Linux系统采用层级式树状目录结构,该结构中的最上层是根目录“/”,有且只有一个根目录。
    ②Linux以文件的形式管理设备,在Linux的世界里,一切皆文件。
    ③Linux各个文件存放的内容已规划好,不可乱放。
    图源尚硅谷具体的目录结构(加粗为重点了解的内容):

  • /bin(/usr/bin、/usr/local/bin)
    binary的缩写,存放最经常使用的命令

  • /sbin(/usr/sbin、/usr/local/sbin
    s即super user,存放系统管理员使用的系统管理程序

  • /home
    存放普通用户的主目录。在Linux中每个用户都有一个自己的目录,该目录是以用户的账号命名的

  • /root
    该目录为系统管理员,也称作超级权限者的用户主目录

  • /boot
    存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件

  • /proc
    该目录是一个虚拟目录,是系统内存的映射,访问这个目录来获取系统信息

  • /srv
    service的缩写,存放一些服务启动之后需要提取的数据

  • /sys
    linux2.6内核的新变化,该目录下安装了2.6内核中新出现的一个文件系统

  • /temp
    存放临时文件

  • /dev
    类似于windows的设备管理器,把所有的硬件用文件的形式存储

  • /media
    Linux系统会自动识别一些设备,如U盘、光驱等,当识别后,linux会把识别到的设备挂载到这个目录下

  • /mnt
    系统提供该目录是为了让用户临时挂载别的文件系统的。可以将外部的存储挂载在/mnt/上,然后进入该目录就可以查看里面的内容

  • /opt
    给主机额外安装软件所摆放的目录。如安装oracle数据库可以安装到该目录下。默认为空。

  • /usr/local
    另一个给主机额外安装软件所存放的目录。一般是安装通过编译源码方式安装的程序。

  • /var
    存放着不断在扩充的东西,习惯将经常被修改的目录放在这个目录下,包括各种日志文件。

  • /selinux
    SELinux即Security-enhanced Linux,是一种安全子系统,能控制程序只能访问特定文件

实操篇

获取指令的帮助信息类

  1. man 指令
    语法:man
    ex: man ls
    (man是manual的缩写)

  2. help 指令
    ex: help cd

文件目录类

  1. pwd指令
    作用:显示当前工作目录的绝对路径
    语法:pwd
    ex: pwd

  2. ls指令
    作用:查看当前目录的所有内容信息
    语法:ls [选项] [目录或文件]
    常用选项:
    -a:显示当前目录所有的文件和目录,包括隐藏的
    -l:以列表的方式显示信息
    ex: ①ls -l ②ls -al ③ls

  3. cd命令
    作用:切换到指定目录
    语法:cd [参数]
    常用参数:绝对路径和相对路径
    -cd ~ 或者 cd :回到自己的家目录
    -cd … :回到当前目录的上一级目录
    ex:
    ①使用绝对路径切换到root目录:cd /root
    ②使用相对路径切换到/root目录:需要知道目前所在的目录,借助cd…等指令。假设在/usr/lib:cd …/… /root
    ③返回当前目录的上一级目录:cd …
    ④回到家目录:cd 或者 cd ~

  4. mkdir命令
    作用:创建目录(make directory)
    语法:mkdir [选项] 要创建的目录
    常用选项:
    -p:创建多级目录
    ex:
    ①创建一个目录:mkdir /home/dog
    ②创建多级目录:mkdir -p /home/animal/tiger

  5. rmdir指令
    作用:删除空目录
    语法:rmdir [选项] 要删除的空目录
    ex:
    ①删除一个目录:rmdir /home/dog
    PS:
    1、rmdir删除的是空目录,如果目录下有内容是无法删除的
    2、如果要删除非空目录,需使用命令【 rm -rf 要删除的目录】

  6. cp命令
    作用:拷贝文件到指定目录
    语法:cp [选项] source dest
    常用选项:
    -r:递归复制整个文件夹
    ex:
    ①将 /home/aaa.txt 拷贝到 /home/bbb目录下(拷贝单个文件):
    cp /home/aaa.txt /home/bbb/
    ②将/home/test整个目录拷贝到 /home/zwj目录下
    cp -r /home/test /home/zwj/
    PS:使用\cp,如果存在同名文件,会强制覆盖而不提示

  7. rm指令
    作用:删除文件或目录
    语法:rm [选项] 要删除的文件或目录
    常用选项:
    -r:递归删除整个文件夹
    -f:强制删除不提示
    ex: (当前路径为home目录)
    ①删除/home/aaa.txt: rm aaa.txt
    ②递归删除整个文件夹/home/bbb:rm -r bbb/
    PS:加上参数-f即可强制删除而不提示:rm -rf aaa.txt

  8. mv指令
    作用:移动文件与目录 或 重命名
    语法:
    mv oldNameFile newNameFile(重命名)
    mv /temp/movefile /targetFolder(移动文件)
    ex:(当前路径为home目录)
    ①将/home/aaa.txt 重命名为 pig.txt:mv aaa.txt pig.txt
    ②将/home/pig.txt 移动到/root 目录下:mv pig.txt /root/

  9. cat指令
    作用:查看文件内容,以只读的方式打开
    语法:cat [选项] 要查看的文件
    常用选项:
    -n:显示行号
    ex:(当前路径为 /)
    ①显示 /etc/profile 文件内容,并显示行号:cat -n /etc/profile | more
    PS:
    cat只能浏览文件而不可编辑文件,为浏览方便(实现分页浏览)一般会带上管道命令 | more 即: cat 文件名 | more

  10. more指令
    作用:more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容
    语法:more 要查看的文件
    ex:
    ①more /etc/profile
    浏览文件时可使用的快捷键:
    空白键[space]:向下翻一页
    Enter:向下翻一行
    q:立刻离开more,不再显示该文件的内容
    Ctrl+F:向下滚动一屏
    Ctrl+B:返回上一屏
    =:输出当前行的行号
    :f:输出文件名和当前行的行号

  11. less指令
    作用:less指令用来分屏查看文件内容,与more指令功能 类似,但比more更强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
    语法:less 要查看的文件
    ex:
    ①less /opt/金庸-射雕英雄传精校版.txt

  12. “>” 指令 和“ >>”指令
    作用:> --输出重定向:会将原来文件的内容覆盖;>>–追加:不会覆盖原来的内容,而是追加到文件的尾部
    ex:
    ①将ls -l的内容覆盖写入到a.txt中,如果文件不存在,就创建该文件:ls -l > a.txt
    ②将ls -l的内容追加写入到a.txt中:ls -l > > a.txt
    ③将文件1的内容覆盖到文件2:cat 文件1 > 文件2
    ④echo “内容” >> 文件

  13. echo指令
    作用:输出内容到控制台
    语法:echo [选项] [输出内容]
    ex:
    ①使用echo输出当前的环境路径:echo $PATH

  14. head指令
    作用:显示文件的开头部分内容,默认情况下显示文件的前10行内容
    语法:
    ①head 文件(查看前10行)
    ②head -n 5 文件(查看文件前5行内容,5可以是任意数字)
    ex:
    ①查看/etc/profile的前五行代码:head -n 5 /etc/profile

  15. tail指令
    作用:显示文件的尾部部分内容,默认情况下显示文件的后10行内容
    语法:
    ①tail 文件(查看后10行)
    ②tail -n 5 文件(查看文件后5行内容,5可以是任意数字)
    ③tail -f 文件(试试追踪该文档的所有更新,工作上经常用到)
    ex:
    ①查看/etc/profile的后五行代码:tail -n 5 /etc/profile
    ②实时监控文件mydate.txt:tail -f mydate.txt

  16. ln指令
    作用:软链接也叫符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径
    语法:ln -s [原文件或目录] [软链接名](给原文件创建一个软链接)
    ex:(当前路径为home目录)
    ①在/home目录下创建一个软链接,链接到/root目录:ln -s /root linkToRoot
    ②删除软链接:rm -rf linkToRoot

  17. history命令
    作用:查看已经执行过的历史命令,也可以执行历史命令
    语法:history
    ex:
    ①显示所有历史命令:history
    ②显示最近使用过的10个命令:history 10
    ③执行历史编号为5的指令:!5

时间日期类

  1. date指令
    作用:显示当前日期
    语法:
    ①date:显示当前时间
    ②date+%Y:显示当前年份
    ③date+%m:显示当前月份
    ④date+%d:显示当前是哪一天
    ⑤date"%Y-%m-%d %H:%M:%S":显示年月日时分秒

  2. date指令
    作用:设置日期
    语法:date -s 字符串时间
    ex:
    ①设置系统当前时间,设置为“2022-02-13 20:28:00”:date -s “2022-02-13 20:28:00”

  3. cal指令
    作用:查看日历指令
    语法:cal [选项] (不加选项,显示本月日历)
    ex:
    ①显示当前日历:cal
    ②显示2020年日历:cal 2020

搜索查找类

  1. find指令
    作用:find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
    语法:find [搜索范围] [选项]
    选项说明:
    -name<查询方式>:按照指定的文件名查找模式查找文件
    -user<用户名>:查找属于指定用户名所有文件
    -size<文件大小>:按照指定的文件大小查找文件
    ex:
    ①按文件名查找:查找/home 目录下的 hello.txt文件
    find /home -name hello.txt
    ②按拥有者查找:查找/opt目录下,用户名为nobody的文件
    find /opt -user nobody
    ③按size查找:查找整个linux系统下大于20m的文件(+n大于,-n小于,n等于)
    find / -size +20M
    ④按名称匹配:查找/目录下所有的.txt文件
    find / -name *.txt

  2. locate命令
    作用:快速定位文件路径。locate利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。
    语法:locate 搜索文件
    PS:由于locate指令基于数据库进行查询,所以第一次运行前,必须使用ipdatedb指令创建locate数据库。
    ex:
    ①使用locate指令快速定位hello.txt文件所在目录:
    1、updatedb
    2、locate hello.txt

  3. grep指令 和 管道符号 |
    作用:grep过滤查找,管道符号“|”表示将前一个命令的处理结果输出传递给后面的命令处理
    语法:grep [选项] 查找内容 源文件
    常用选项:
    -n:显示匹配行及行号
    -i:忽略字母大小写
    ex:
    ①在hello.txt文件中,查找“yes”所在行,并且显示行号
    区分大小写: cat hello.txt | grep -n yes
    不区分大小写:cat hello.txt | grep -ni yes

压缩和解压类

  1. gzip/gunzip指令
    作用: gzip用于压缩文件;gunzip用于解压文件
    语法:
    gzip 文件(压缩文件,只能压缩为 *.gz文件)
    gunzip 文件.gz (解压缩文件)
    PS:当使用gzip对文件进行压缩后,不会保留原来的文件

  2. zip/unzip指令
    作用:zip用于压缩文件;unzip用于解压,在项目打包发布中很常用
    语法:
    zip [选项] xxx.zip 将要压缩的内容(压缩文件或目录)
    unzip [选项] xxx.zip(解压缩文件)
    zip常用选项:
    -r:递归压缩,即压缩目录
    unzip常用选项:
    -d<目录>:指定解压后文件的存放目录
    ex:
    ①将/home 下的所有文件压缩成 mypackage.zip
    zip -r mypackage.zip /home
    ②将mypackage.zip解压到 /opt/tmp 目录下
    unzip -d /opt/tmp/ mypackage.zip

  3. tar指令
    作用:打包指令,打包成的文件是 .tar.gz文件
    语法:
    tar [选项] xxx.tar.gz 打包的内容(压缩目录,打包后的文件格式是 .tar.gz)
    选项说明:
    -c:产生.tar打包文件
    -v:显示详细信息
    -f:指定压缩后的文件名
    -z:打包同时压缩
    -x:解包.tar文件
    ex:
    ①压缩多个文件:将a1.txt 和 a2.txt 压缩成 a.tar.gz
    tar -zcvf a.tar.gz a1.txt a2.txt
    ②将/home 的文件夹 压缩成 myhome.tar.gz
    tar -zcvf myhome.tar.gz /home/
    将a.tar.gz解压到当前目录
    tar -zcvf a.tar.gz
    ④将myhome.tar.gz解压到/opt/目录下
    tar -zcvf myhome.tar.gz -C /opt/
    PS:指定解压到的那个目录要存在,解压才会成功,否则会报错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值