【Linux】【系统纪元】Linux根本指令

打印 上一主题 下一主题

主题 993|帖子 993|积分 2979




    快乐的流通:个人主页  


    个人专栏:《C游记》《进击的C++》《Linux迷航》  
    远方有一堆篝火,在为久候之人燃烧!  

  
引言

Linux下一切皆文件!
在Linux操纵系统中,一切皆文件的哲学意味着几乎全部的东西都被视为文件,包罗平凡文件、设备(如表现器和键盘)、目次等。这种同一的文件接口使得对各种设备和文件的操纵变得同等且简单。


  • 平凡文件(具备写方法和读方法):
    1. 普通文件在Linux中既可以被读取也可以被写入。
    2. 例如:文本文件、配置文件等。
    复制代码
  • 表现器(具备写方法,不具备读方法):
    1. 显示器通常作为标准输出设备,只需要写入数据。
    复制代码
  • 键盘(具备读方法,不具备写方法):
    1. 键盘作为输入设备,只需要读取数据。
    复制代码
一、文件管理

1.1 ls

list:列出当前目次下的内容
  1. ls [选项] [目录]
复制代码

常用选项功能-l列出文件的详细信息-a列出目次的全部文件(包罗隐蔽文件)-d列出目次的属性(而不是内容)

ps:. 表示当前目次, .. 表示上一级目次。
ps:文件名以 . 开头的都是隐蔽文件。
ps:选项可以叠加,而且写的地方不固定(一样平常跟在指令后面)。
   文件 = 文件属性 + 文件内容
文件属性包罗文件名,大小,创建时间等。
文件内容则是通常写在文件里的信息。
  同时,ls -l 可以简写为 ll,可以明白为 ll 是 ls -l 的别名。

1.2 pwd


print working directory:表现当前工作目次
  1. pwd
复制代码

ps:/ 称为路径分隔符(Linux风格)。
ps:上述也可写成 /home/huzch/,末了的 / 可加可不加。
   Linux系统中,磁盘上的文件和目次被组成一棵目次树,每个节点都是目次或文件。最开始的 / 称为根目次。
  

1.3 cd

change directory:改变当前工作目次
  1. cd [目录]
复制代码
绝对路径访问:

相对路径访问:

cd . .:返回上一级目次
cd ~:返回家目次
cd -:返回近来访问的目次

ps:用户最初进入的目次,称为家目次。
1.4 mkdir

make directory:创建空目次
  1. mkdir [选项] 目录
复制代码
常用选项功能-p递归创建一连串目次

ps:tree指令可以表现对应目次的文件树,方便观察。
   对应目次删除的指令是 rmdir,但是只能删除空目次。以是后续我们用rm指令来同一删除文件和目次。
  1.5 touch

touch:创建空文件或更新文件的时间戳
  1. touch [选项] 文件
复制代码

1.6 rm

remove:删除文件或目次
  1. rm [选项] 文件/目录
复制代码
常用选项功能-r递归删除目次及其子目次和文件-f逼迫删除,不再扣问-i删除前逐一扣问

   告诫:rm -rf / 会直接递归删除根目次,也就是删除了整个Linux系统,不要容易尝试!
  1.7 cp

copy:拷贝并重定名
  1. cp [选项] 源文件 目标文件
复制代码

默认环境下,拷贝到当前目次。

这种写法等价于上述默认写法。

默认环境下,不加文件名,则不改变文件名进行拷贝。

既加目次,又加文件名,则是拷贝并重定名。
常用选项功能-r递归拷贝目次及其子目次和文件-f逼迫拷贝覆盖,不再扣问-i覆盖文件进步行扣问

1.8 mv

move:移动并重定名
  1. mv [选项] 源文件 目标文件
复制代码


常用选项功能-f逼迫移动覆盖,不再扣问-i覆盖文件进步行扣问 ps:mv的用法与cp相似。
二、文件输出

2.1 echo

echo:将字符串输出
  1. echo [选项] 字符串
复制代码

ps:字符串的引号可加可不加,不影响。
2.2 cat

concatenate:将文本输出
  1. cat [选项] 文件
复制代码

常用选项功能-n对输出的全部行编号-b对输出的非空行编号-s不输出多行空行

ps:cat指令只恰当查看小文本,而接下来学习的指令更恰当查看大文本。
2.3 less

less:分页输出文件
  1. less [选项] 文件
复制代码
常用选项功能-N对输出的全部行编号-i忽略搜索时的大小写?字符串向上搜索该字符串/字符串向下搜索该字符串n重复前一个搜索N反向重复前一个搜索   其实还有一个相似的分页查看指令——more,但是more只能向下翻页,less既可以向上翻页,也可以向下翻页,更方便我们阅读文件内容。同时,less在查看之前不会加载整个文件。别的,less还可以向上向下进行搜索,功能更增强大。
  2.4 head

head:输出文件开头
  1. head [选项] 文件
复制代码
常用选项功能-行数表现的行数

默认输出行数为10行。
2.5 tail

tail:输出文件结尾
  1. tail [选项] 文件
复制代码
常用选项功能-行数表现的行数

默认输出行数为10行。
三、重定向与管道

3.1 >

输出重定向(>):将下令的标准输出重定向到指定文件中。
  1. 命令 > 文件
复制代码



  • 输出重定向将原本写入表现器文件的内容,写入了指定文件中。
ps:想要创建一个新文件,除了用touch指令,也可以用输出重定向>来创建。


但是,输出重定向每次会清除之前写的内容,再进行新一轮写入。以是,假如想要在原本的根本上写入,就要用到追加重定向>>。
3.2 >>

追加重定向(>>):将下令的标准输出追加到指定文件的末端。
  1. 命令 >> 文件
复制代码

3.3 <

输入重定向(<):将指定文件的内容重定向为下令的标准输入。
  1. 命令 < 文件
复制代码

乍一看,是不是感觉二者没有什么区别,好像<没什么用?其实,它们还是有差别的:


  • cat t1.c 这句指令中,cat知道t1.c的文件名,直接打开文件并输出。
  • cat < t1.c 这句指令中,cat不知道t1.c的文件名,只是从输入中读取并输出。而这里的输入便是t1.c的文件内容。
3.4 |

管道(|):将一个下令的输出作为另一个下令的输入。
  1. 命令1 | 命令2
复制代码
如何查找一个大文件中的第30行到第50行?

这时我们可以用管道,进行流水线作业,来完成较复杂的输出操纵。

  • 首先,cat输出t2.c,作为管道文件转达给下一个指令。
  • 其次,head -50输出管道文件的前50行,再作为新的管道文件转达给下一个指令。
  • 末了,tail -20输出管道文件的后20行,就完成了第30行到第50行的输出。
ps:管道文件是内存级的。
四、文件查找

4.1 which

which:查找指令的路径
  1. which 指令
复制代码

   指令的本质,就是编译好的程序或脚本,存放于系统的特定路径下,好比系统指令存放于 /usr/bin/ 路径下。
  5.2 whereis

whereis:查找指令及其源代码和手册页的路径
  1. whereis 指令
复制代码

ps:相对于which指令,whereis指令查找的信息更加详细。
4.3 grep

global regular expression print:在文件中查找匹配特定模式的文本行
  1. grep [选项] 模式 文件
复制代码

常用选项功能-n输出行号-i忽略查找时的大小写-v查找不匹配该模式的文本行

ps:grep是一种文本行过滤工具。
4.4 find

find:在文件系统中查找文件
  1. find [路径] [选项] [表达式]
复制代码
常用选项功能-name通过文件名查找

ps:比起which和whereis指令在特定路径下查找,find指令真的会遍历整个文件系统(以当前目次为根结点),在磁盘文件中查找。
ps:在运行一个非常消耗资源的find下令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统大概会花费很长的时间。
五、其他

5.1 man

manual:查询特定下令或程序的手册页
  1. man 命令
复制代码
编号内容1指令2系统函数3库函数4特别文件5文件格式6游戏7杂项8系统管理下令(通常只针对root用户)

ps:不加编号时,默认编号为1,查询指令。
ps:关于指令的浩繁选项,我们不消全部记住,只必要在要用时查询即可。
5.2 zip

zip:打包并压缩
  1. zip [选项] 压缩包名 文件/目录
复制代码
常用选项功能-r递归处置惩罚目次及其子目次和文件


   同时,与zip指令对应的是unzip指令,负责解包解压文件或目次。
  

ps:解包解压到特定目次,必要加选项-d。同时留意选项的位置。

   打包的意义
  

  • 简化管理:将多个文件和文件夹组合成一个文件,便于管理和传输。
  • 保持结构:生存文件和文件夹的原始层次结构,便于备份和迁移。
  • 文件完整性:确保文件集的同等性和完整性,防止漏传或乱序。
  压缩的意义
  

  • 节省存储空间:淘汰文件所占的存储空间。
  • 提高传输服从:淘汰文件大小,紧缩传输时间,节省带宽。
  • 降低本钱:淘汰存储和传输的数据量,降低本钱。
  • 增强安全性:通过加密压缩文件,增加数据安全性。
  打包与压缩结合的意义
  

  • 一体化处置惩罚:同时实现打包和压缩,提高服从。
  • 便捷性:便于分发和下载,用户操纵更简单。
  • 兼容性:打包和压缩后的文件通常跨平台兼容。
  5.3 tar

tape archive:打包或解包
  1. tar [选项] 归档文件 文件/目录
复制代码
常用选项功能-c创建归档文件-x从归档文件中提取文件-t查看归档文件-z通过gzip压缩或解压缩-j通过bzip2压缩或解压缩-v表现操纵过程中的详细信息-f指定归档文件的名称-C解压到指定目次 ps:归档和打包是一个意思。

打包压缩

预览

解包解压

解包解压到指定目次

ps:后缀全称为 .tar.gz,tar是打包后缀,gz是压缩后缀,简写为 .tgz。
ps:tar指令本身用来打包解包,但是可以结合不同的压缩工具(如gzip、bzip2),进行打包并压缩。

   zip 和 tar 的区别
  

  • 功能

    • zip:集成了压缩和归档功能,可以直接创建压缩的ZIP文件。
    • tar:重要用于打包文件和目次,必要结合gzip、bzip2等压缩工具才气创建压缩 归档文件。

  • 利用场景

    • zip:常用于必要创建跨平台兼容的压缩文件,比方在Windows和macOS之间传输文件。
    • tar:常用于Linux和Unix系统,恰当备份和传输大量文件和目次,特别是在系统管理和开辟环境中。

  • 压缩率

    • zip:提供较好的压缩率,但一样平常低于tar结合gzip或bzip2的压缩率。
    • tar:与不同的压缩工具结合利用时,可以到达较高的压缩率,bzip2和xz通常比gzip压缩率更高。

  • 文件处置惩罚

    • zip:可以方便地添加或删除单个文件而无需重新创建整个归档文件。
    • tar:修改归档文件内容通常必要重新创建归档文件。

  5.4 date

date:指定格式表现时间
  1. date [选项] [+格式]
复制代码
常用格式功能%Y年%m月%d日%H时%M分%S秒%F相当于%Y-%m-%d%X相当于%H:%M:%S

常用格式功能%s日期->时间戳-d@时间戳->日期

   Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从1970年1月1日(UTC/GMT的半夜)开始所颠末的秒数,不考虑闰秒。
  5.5 cal

calendar:表现公历
  1. cal [选项] [日] [月] [年]
复制代码


常用选项功能-3表现上月、本月和下月的日历-j输出儒略日格式的日历-y表现一整年的日历

ps:儒略日是一种一连计数的时间表示法,从每年的1月1日算起今天是第几天。
5.6 bc

basic calculator:下令行盘算器,支持任意精度的盘算
  1. bc [选项]
复制代码
启用交互模式:

非交互模式执行盘算:

5.7 uname

unix name:表现电脑和操纵系统的信息
  1. uname [选项]
复制代码
常用选项功能-a表现全部信息



  • 内核名称:Linux
  • 主机名称:code-space
  • 内核版本号:3.10.0-1160.108.1.el7.x86_64
  • 内核编译版本:#1 SMP Thu Jan 25 16:17:31 UTC 2024
  • 硬件名称:x86_64
  • 处置惩罚器范例:x86_64
  • 硬件平台:x86_64
  • 操纵系统名称:GNU/Linux
这些信息有助于了解系统的根本状态和配置,常用于系统管理和调试。
六、热键

6.1 TAB

  1. 命令补全
复制代码
6.2 CTRL + C

  1. 终止程序
复制代码
6.3 CTRL + D

  1. 退出
复制代码
ps:等同于exit指令。
6.4 CTRL + L

  1. 清空
复制代码
ps:等同于clear指令。
6.5 CTRL + R

  1. 查找历史命令
复制代码
ps:Linux系统会自动生存近来的1000条指令。
七、Shell

7.1 定义

Shell(外壳) 是一个下令行解释器(command Interpreter),用来沟通用户与 Kernel(内核)

下令行解释器分为四个部分:


  • 用户名:huzch
  • 主机名:code-space
  • 当前目次:~
  • 下令行提示符:$
7.2 意义

由于用户难以直接操纵Linux内核,以是必要Shell外壳来作为桥梁进行连接。
下令行解释器重要有两个意义:

  • 将用户的下令翻译给内核处置惩罚,同时将内核的处置惩罚效果翻译给用户。
  • 变相保护操纵系统,拦截用户的非法请求。
   输入指令的本质,实际上是在输入字符串。而下令行解释器将将字符串翻译给内核,调用对应的指令。
  ps:Linux下的下令行解释器可以类比Windows下的图形化界面。
ps:Linux = Kernel + Shell + 各种应用组件
7.3 版本

在Linux中,最常见的几种Shell包罗:

  • Bash(Bourne Again Shell)
  • Zsh(Z Shell)
  • Fish(Friendly Interactive Shell)
  • Ksh(KornShell)
  • Dash(Debian Almquist Shell)
  • Tcsh(TENEX C Shell)
这些Shell各有特色,可以根据具体需求和个人偏好进行选择和利用。
总结

重要的指令:mkdir、rm、cp、mv、less、find、man、tar
知识点:Linux下一切皆文件、重定向与管道



    真诚点赞,手有余香   

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

忿忿的泥巴坨

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表