Linux基本指令汇总

本专栏内容为:Linux学习专栏,分为系统和网络两部分。 通过本专栏的深入学习,你可以了解并掌握Linux。

博主csdn个人主页:小小unicorn
⏩专栏分类:Linux从入门到精通
代码仓库:小小unicorn的代码仓库
关注我带你学习编程知识

基本指令

  • 基本用法:
    • whoami✔
    • who✔
    • clear✔
  • ls✔
    • 常用选项:
      • -l
      • -a
  • pwd✔
  • cd✔
  • touch✔
  • mkdir✔
  • rmdir指令✔
  • rm✔
  • man✔
  • cp指令✔
  • mv指令✔
  • cat指令✔
  • alias指令✔
  • more指令✔
  • less指令✔
  • head指令✔
  • tail指令✔
  • date指令✔
    • 用法一:
    • 用法二:
    • 用法三: 完成时间与时间戳之间的相互转换。
  • cal指令✔
  • find指令✔
  • which指令✔
  • grep指令✔
  • zip/unzip指令✔
  • tar指令✔
  • file指令✔
  • bc指令✔
  • uname指令✔
  • 几个重要的热键✔
  • 关机指令✔
  • 命令扩展✔

基本用法:

在xshell中:
我们可以用alt+enter全屏返回全屏
全屏:
Linux基本指令汇总_第1张图片
退出全屏:
Linux基本指令汇总_第2张图片

whoami✔

whoami: 查看当前账号是谁

在这里插入图片描述

who✔

who: 当前有哪些人正在登录机器

Linux基本指令汇总_第3张图片

clear✔

clear: 清屏

ls✔

ls: 查看当前目录下的文件信息。
Linux基本指令汇总_第4张图片

文件=文件内容(全都是二进制数据,都要被存储)+文件属性

我们以前,现在,未来,学习的所有的文件操作,本质是:
1.要么对文件内容做操作
2.要么对文件属性做操作

常用选项:

-l

-l:列出文件的详细信息。
Linux基本指令汇总_第5张图片
小技巧:ls -l 也可以简写为 ll。
Linux基本指令汇总_第6张图片

-a

-a 列出目录下的所有文件,包括以 . 开头的隐含文件。

隐藏文件:在Linux中隐藏文件以.开头
在这里插入图片描述

小贴士:在Linux当中,每个目录下默认存在两个隐含文件 . 和 . . ( . 代表当前目录 . . 代表上级目录)。

pwd✔

语法: pwd
功能: 显示用户当前所在的目录。
Linux基本指令汇总_第7张图片

cd✔

在Linux系统中,磁盘上的文件和目录被组成一棵目录树,其中每个结点都是目录或文件。
在Windows当中,我们可以通过鼠标点击的方式在各个目录之间来回跳转,而在Linux当中我们需要用到cd指令来实现该操作。
语法: cd 目录名
功能: 改变工作目录。将当前工作目录改变到指定的目录下。

1)cd . . (返回上级目录)。
Linux基本指令汇总_第8张图片
2)cd - (返回最近访问目录)
在这里插入图片描述
3)cd ~(进入用户家目录)
在这里插入图片描述
Linux基本指令汇总_第9张图片

在这里插入图片描述
Linux基本指令汇总_第10张图片

touch✔

touch: 创建普通文件

语法: touch 选项 文件
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
Linux基本指令汇总_第11张图片
常用选项:
1)-a 或 --time=atime 或 --time=access 或 --time=use 只更改存取时间。
2)-c 或 --no-create 不建立任何文档。
3)-d 使用指定的日期时间,而非现在的时间。
4)-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
5)-m 或 --time=mtime 或–time=modify 只更改变动时间。
6)-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
7)-t 使用指定的日期时间,而非现在的时间。
Linux基本指令汇总_第12张图片

mkdir✔

语法: mkdir  选项 dirname
功能: 在当前目录下创建一个名为“dirname”的目录。
Linux基本指令汇总_第13张图片
多级目录的创建
如果想要创建多个目录,比如:

d1里面有d2,d2里面有d3
d3里面有d4,d4里面有d5

创建这样的文件系统如果像这样操作:
创建d1,cd进入d1再创建d2
非常麻烦!

于是可以这样创建:

指令: mkdir -p d1/d2/d3/d4/d5

Linux基本指令汇总_第14张图片

rmdir指令✔

rmdir是一个与mkdir相对应的指令,mkdir是建立目录,而rmdir是删除目录。

语法: rmdir 选项 dirname
功能: 删除空目录。
适用对象: 具有当前目录操作权限的所有使用者。
Linux基本指令汇总_第15张图片

rm✔

rmdir指令只能用于删除空目录,若是要相删除其他文件,则需要用到rm指令。
Linux基本指令汇总_第16张图片
-r 删除目录及其下所有文件(递归式删除):
Linux基本指令汇总_第17张图片
特别注意: 上面说到 -f 是强制性删除,-r 是递归式删除,这两个结合在一起就是递归式强制性删除,千万不要执行以下指令,因为在Linux当中没有类似回收站的东西也没有撤销删除的功能,删除指令一旦执行则是不可逆的。
在这里插入图片描述
该指令的意思是从(/)根目录开始进行递归式强制性删除,即删除根目录下所有文件,这是一个大忌,典型的删库跑路行为。所以,当你要使用“rm -rf dirname”这条指令前,你必须明确以下两点:
 1、你清楚的知道你自己正在干什么。
 2、执行该命令后所造成的结果是你能够承担的。

-i 删除前逐一询问确认。
在这里插入图片描述

man✔

Linux的指令有很多参数,我们不一定能全部记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的指令便是man。

语法: man 选项 指令
功能: 查看指令的使用规则等。
Linux基本指令汇总_第18张图片
Linux基本指令汇总_第19张图片
常用选项:
1)-k 根据关键字搜索联机帮助。
2)num 只在第num章节查找。
3)-a 将所有章节的查找结果都显示出来。

手册分为8章:
1)可执行程序或shell命令。
2)系统调用(内核提供的函数)。
3)库函数(程序库中的函数)。
4)特殊文件(通常在/dev中找到)。
5)文件格式和约定,如/etc/passwd。
6)游戏。
7)杂项。
8)系统管理命令(通常仅限于root用户)。

cp指令✔

在Windows中我们可以通过Ctrl+C和Ctrl+V将一个地方的文件或目录复制一份到另一个地方,我们若是在Linux当中想要完成该操作,就要用到cp指令。

语法: cp 选项 源文件或目录 目标文件或目录
功能: 复制文件或目录。
Linux基本指令汇总_第20张图片
我们先创建一个test目录:
Linux基本指令汇总_第21张图片
我们将刚开始写的test2.c拷贝到test目录下:
Linux基本指令汇总_第22张图片
使用cat指令查看一下test目录下test2.c的内容:
Linux基本指令汇总_第23张图片
将test2.c继续拷贝到test目录下,并且重命名为mytest.c
Linux基本指令汇总_第24张图片
继续将可执行文件也拷贝到test目录下:
在这里插入图片描述

mv指令✔

在Windows中我们经常使用Ctrl+X和Ctrl+V将一个地方的文件或目录移动到另一个地方,我们若是要在Linux当中完成此操作,则需要使用mv指令。

语法: mv 选项 源文件或目录 目标文件或目录
功能: 视mv指令当中两个参数的不同而不同。

1)当第二个参数是不存在的名称时,mv指令完成文件重命名或目录重命名。
Linux基本指令汇总_第25张图片
文件可以重命名,目录也可以:
Linux基本指令汇总_第26张图片
2)当第二个参数是已存在目录名称时,mv指令将文件移动置该目录中。
Linux基本指令汇总_第27张图片

cat指令✔

在Linux当中无法想Windows一样用鼠标点开某一文件进行阅读,要想阅读文件可以用cat指令。

语法: cat 选项 文件
功能: 查看目标文件的内容。

在这里插入图片描述
Linux基本指令汇总_第28张图片
Linux基本指令汇总_第29张图片
Linux基本指令汇总_第30张图片
Linux基本指令汇总_第31张图片
Linux基本指令汇总_第32张图片
-n 对输出的所有行编号。
Linux基本指令汇总_第33张图片
Linux基本指令汇总_第34张图片
-b 对非空输出行编号。
Linux基本指令汇总_第35张图片
-s 禁止重复的空输出行。
在这里插入图片描述
注意: cat指令会将目标文件内容全部打印到屏幕上。若是目标文件内容过大,则会导致刷屏(直到将文件内容全部打印到屏幕上)。因此cat指令一般仅适用于查看内容较少的文件。

alias指令✔

alias:可以起一个别名。其功能跟没改之前一样
Linux基本指令汇总_第36张图片
Linux基本指令汇总_第37张图片

more指令✔

上面说到,cat指令仅适用于查看内容较少的文件,我们若是要查看海量信息文件,则可以适用more指令。
语法: more 文件
功能: 查看目标文件的内容。

Linux基本指令汇总_第38张图片
注意: more指令只能通过按回车键进行下翻操作,无法进行上翻操作,并且more指令在查看之前会先加载整个文件。

less指令✔

上面的more指令只能进行下翻操作,而less指令可以同时支持上翻和下翻操作。

语法: less 选项 文件
功能: 既有查看目标文件的内容的功能,又有搜索功能。
Linux基本指令汇总_第39张图片
注意: less指令可以通过按上下键进行上翻和下翻操作,并且less指令在查看之前不会加载整个文件。

常用选项:
1)-i 忽略搜索时的大小写。
2)-N 显示每行的行号。
3)/字符串 向下搜索“字符串”的功能。
4)?字符串 向上搜索“字符串”的功能。
5)n 重复前一个搜索(与/或?有关)。
6)N 反向重复前一个搜索(与/或?有关)。

head指令✔

语法: head 选项 文件
功能: 用于显示文件的开头至标准输出中,默认head指令打印其相应文件的开头10行。
Linux基本指令汇总_第40张图片
常用选项:
1)-n 需要显示的行数。
Linux基本指令汇总_第41张图片

tail指令✔

语法: tail 选项 文件
功能: 用于显示文件的末尾至标准输出中,默认tail指令打印其相应文件的末尾10行。
Linux基本指令汇总_第42张图片
拓展:如何读取文件中间某一段内容?
例如,现在test.txt文件当中有十万行内容,我们如何读取第1001至1010行?
在认识了head和tail指令后,你可能很容易想到如下方法:先用head指令读取test.txt文件中的前1010行存入临时文件temp.txt中,然后将temp.txt文件的后10行打印输出即可。
Linux基本指令汇总_第43张图片
注意: >(输出重定向),图中第一条指令的意思是,将本应该输出到屏幕的内容输出重定向到temp.txt文件当中。

这样写显然有点麻烦(还需要创建一个临时文件),有一种简便的方式可以实现该操作,该方式需要用到“命令行管道”。
我们知道,管道是用于传输某种资源的(下水管道用于传输水,天然气管道用于传输天然气),而计算机上面最重要的资源就是数据。
在指令中管道用“|”来表示,管道左边接收产生的数据,右边读取数据。
Linux基本指令汇总_第44张图片
因此我们可以将test.txt文件的前1010行从管道左侧输入管道,并在管道右侧读取数据进行进一步的操作即可。
Linux基本指令汇总_第45张图片

date指令✔

语法: date 选项 格式
功能: 用于显示时间、设置时间、完成时间与时间戳之间的相互转换等。
Linux基本指令汇总_第46张图片

用法一:

用于显示时间,使用者可以选定欲显示的格式,格式设定为一个加号,后接数个标记,其中常用的标记如下:

1)%H 显示当前的小时,范围(00~23)。
2) %M 显示当前的分钟,范围(00~59)。
3)%S 显示当前的秒数,范围(00~59)。
4)%X 相当于%H:%M:%S。
5)%d 显示当前的号数。
6)%m 显示当前的月份。
7)%Y 显示当前的年份。
8)%F 相当于%Y-%m-%d。
在这里插入图片描述
在这里插入图片描述

用法二:

用于设定时间。

1)date -s 设置当前时间,只有root用户才能设置,普通用户只能查看。
2)date -s 20210725 将时间设置为20210725,这样会将具体时间设置为空(00:00:00)。
3)date -s 01:01:01 设置具体时间,不会对日期做更改。
4)date -s “01:01:01 2021-07-25” 同时设置日期和具体时间。
5)date -s “01:01:01 20210725” 同时设置日期和具体时间。
6)date -s “2021-07-25 01:01:01” 同时设置日期和具体时间。
7)date -s “2021072501:01:01” 同时设置日期和具体时间。

用法三: 完成时间与时间戳之间的相互转换。

时间戳是当前时间与计算机起始时间的差值,单位为秒。

1)date +%s 显示当前时间的时间戳。
2)date -d @时间戳 将时间戳转换为时间。
Linux基本指令汇总_第47张图片

cal指令✔

cal指令可以用于显示公历(阳历)日历。

语法: cal 选项 月份 年份
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1~9999),如有两个参数,则表示月份和年份。
Linux基本指令汇总_第48张图片
常用选项:
1)-3 显示系统前一个月、当前月以及下一个月的日历。
Linux基本指令汇总_第49张图片
2)-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)。
Linux基本指令汇总_第50张图片
3)-y 显示当前年份的日历。
Linux基本指令汇总_第51张图片

find指令✔

语法: find 路径 选项 …
功能: 用于在文件树中查找文件,并作出相应的处理(可能访问磁盘->效率比较低)。

常用选项:
1)-name 按照文件名查找文件。
在这里插入图片描述
2)-size 按照文件大小查找文件。
Linux基本指令汇总_第52张图片

which指令✔

Linux当中的每个指令其实都是用计算机语言编写出的可执行程序,这些程序都存储在文件当中,我们可以通过which指令查看某一指令的程序文件所在路径。

语法: which 指令
功能: 用于查找某一指令的程序文件所在路径。
Linux基本指令汇总_第53张图片
当我们执行某一指令时,实际是调用其可执行程序,因此我们还可以通过其程序文件的所在路径进行调用该指令。
Linux基本指令汇总_第54张图片

grep指令✔

grep指令类似于关键词搜索(行过滤器)。

语法: grep 选项 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来。
Linux基本指令汇总_第55张图片
常用选项:
1)-i 忽略大小写进行查找。

Linux基本指令汇总_第56张图片
2)-n 输出行号。
Linux基本指令汇总_第57张图片
3)-v 反向选择,显示出没有待搜索字符串的行。
Linux基本指令汇总_第58张图片

zip/unzip指令✔

zip指令用于打包压缩目录或文件。

语法: zip 选项 压缩文件.zip 待打包目录或文件
功能: 将目录或文件打包压缩成zip格式。
常用选项:

1)-r 递归处理,将指定目录下的所有文件和子目录一并处理。
Linux基本指令汇总_第59张图片
unzip指令用于解压文件。

语法: unzip 压缩文件.zip 选项 目录
功能: 将压缩文件解压到指定目录当中。
Linux基本指令汇总_第60张图片
注意: 解压文件时若不带-d选项和目标目录,则默认解压到当前目录下。

tar指令✔

tar指令也可以用来打包压缩和解压文件,并且还可以实现不解开压缩包,直接查看里面内容的操作,以及只打包不压缩等操作。

语法: tar 选项 压缩文件 …
功能: 打包/解包,不解开压缩包,直接查看里面内容。

常用选项:
1)-c 建立一个压缩文件的参数指令(create的意思)。
2)-x 解开一个压缩文件的参数指令。
3)-t 查看tarfile里面的文件。
4)-z 是否同时具有gzip属性?即是否需要用gzip压缩?
5)-j 是否同时具有bzip2属性?即是否需要用bzip2压缩?
6)-v 压缩的过程中显示文件(常用)。
7)-f 使用档名,请留意,在f之后要立即接档名,不要再加参数。
8)-C 解压到指定目录。
打包示例:
Linux基本指令汇总_第61张图片
解包示例:
Linux基本指令汇总_第62张图片
不解开压缩包,直接查看里面内容:
Linux基本指令汇总_第63张图片

file指令✔

语法: file
功能: 查看文件的更多属性信息。
Linux基本指令汇总_第64张图片

bc指令✔

Windows里面有计算器,Linux下面也有,bc指令就是Linux下的计算器。
语法: bc
功能: 进行运算。
Linux基本指令汇总_第65张图片

uname指令✔

语法: uname 选项
功能: 用于获取电脑和操作系统的相关信息。
常用选项:
1)-r 输出电脑和操作系统相关信息。
在这里插入图片描述
2)-a 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称。
在这里插入图片描述

几个重要的热键✔

1)上下按键。上下按键在Linux当中存储的是历史命令,通过按上下键我们可以查看我们最近敲的命令。
我们也可以使用history指令查看历史命令。
Linux基本指令汇总_第66张图片
2)Ctrl+D。退出当前命令行。
3)Ctrl+C。让当前程序停掉(终止失控程序)。
4)Tab。自动补齐功能。

在这里插入图片描述
在这里插入图片描述

5)Ctrl+R。搜索历史命令。

关机指令✔

语法: shutdown 选项

常见选项:
1)-h 将系统的服务停掉后,立即关机。
2)-r 将系统的服务停掉之后就重新启动。
3)-t sec 经过sec秒后关机。
注: 所有关机指令只能由root用户执行

命令扩展✔

1)安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。
2)文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。
3)系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。
4)网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup。
5)系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。
6)其他命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。

你可能感兴趣的:(Linux从入门到精通,linux,服务器,运维)