【Linux从入门到精通】Linux常用基础指令(上)

简介: 本篇文章会对Linux下的常用进行详细解释,并附加实例。通俗易懂,希望会对你有所帮助。根据内容量、内容的难易程度、内容的重要程度,分为上中下篇来讲解。

一、什么是Linux的指令呢?



 Linux命令是在命令行上运行的程序或实用程序。命令行是一个界面,它接受文本行并将其处理为计算机的指令。通俗来讲,我们所输入的指令就是一个可执行程序。当我们运行一条指令时,会在系统相应文件下找相应的指令,然后在执行。相当于就是执行了一个可执行程序。


 Linux下的指令有很多,我们接下来讲解最为常用的指令。

二、Linux下的常用指令

2、1 ls 指令



语法 : ls [ 选项 ] [ 目录或文件 ]

功能 :对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

常用选项:

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

-d 将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录。

-i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件。

-k 以 k 字节的形式表示文件的大小。ls –alk 指定文件。

-l 列出文件的详细信息。

-n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)

-F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表。

示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。(目录类型识别)

-r 对目录反向排序。

-t 以时间排序。

-s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)

-R 列出所有子目录下的文件。(递归)

-1 一行只输出一个文件。

 上述为ls指令的功能、和选项。最为常用的几条选项我们进行了标记(加黑处理)。接下来我们看其具体实例用法是什么样子的。


2、1、1 ls -a

 我们在这里创建一个空目录,我们看到 ls ,并没显示右任何文件。但是该目录下还有隐藏文件(文件名称以 · 开头的)。ls -a即可查看隐藏文件。


2、1、2 ls -l

 -l 选项是可以显示出文件的详细信息。具体实例我们可以看如下:

 其中详细信息包含了文件的多种属性。我们这里还有一个需要注意的点是:ls -l 等同于 ll




cbe5743c860744b48caea10d5a338179.png

2、1、3 ls -d

 通过上图,我们想看看目录的详细信息,结果直接显示的是目录里文件的详细信息。这时候我们可以选择 ls -d 选项,具体如下图:


4553eeac446940368a901b97a8bfdc75.png


2、2 pwd 指令

 pwd指令就是显示出我们当前所在问价的路径,具体如下:

 并没有选项可其他操作,主要就是查看当前所在问价的路径。


2、3 cd 指令



语法 :cd 目录名

功能 :改变工作目录。将当前工作目录改变到指定的目录下。

举例:

cd .. : 返回上级目录;

cd /home/litao/linux/ : 绝对路径;

cd ../day02/ : 相对路径;

cd ~:进入用户家目;

cd -:返回最近访问目录。


我们从上述了解到 cd 指令的功能就是切换目录。 其中还有家目录和根目录。什么是家目录和根目录呢?我们可以先了解一下Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。如下图:


33f9534f4ae34afbb4c62699e42be362.png


我们自己所创建的用户都在家目录(home)下。从上图我们也可以以了解到,我们所说的根目录就是所有文件的组织者。通俗来讲,Linux下的所有文件都在根目录( \ )下

 cd 指令到底怎么用呢?我们可先看下图:


45e8fc50404b45e8af233047a37e4764.png


我们这里结合了pwd指令一起理解。

2、4 touch 指令


语法 :touch [ 选项 ]...  文件 ...

功能 : touch 命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。

常用选项 :

-a   或--time=atime或--time=access或--time=use只更改存取时间。

-c   或--no-create  不建立任何文档。

-d  使用指定的日期时间,而非现在的时间。

-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。

-m   或--time=mtime或--time=modify  只更改变动时间。

-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

-t  使用指定的日期时间,而非现在的时间

 touch指令是创建文件。其中touch指令下有很多选项,其中我们都不经常用,大概了解一下即可。 注意:这里的touch是创建的普通文件(文本文件等等),与后面要学的mkdir指令创建的文件夹(目录)还是有所区别的。我们看看touch使用的实例。


872dd8d018724b7295b14e3ba830f749.png

2、5 mkdir 指令


语法:mkdir [选项] dirname...


功能 :在当前目录下创建一个名为 “dirname” 的目录

常用选项 :

-p, --parents  可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录

 mkdir指令是值得在某路径下创建一个目录。我们来看其使用实例。


69d28f38e5644bd488f5d3f651adea44.png



2、5、1 mkdir -p

 还有我们在同一目录下连续创建多个目录。我们先看正常情况下是一个一个创建,如下图:

 通过上图发现,假如我们同时要创建更多的目录呢?上面的创建方式泰国麻烦。这时我们想到,同时创建多个目录。如下:

f730483a6af74534aaeb5023a6305627.png


 我们发现默认情况是不被允许的。我们可以用 -p 选项进行同时创建多个目录。如下:

 这时候就创建成功了。



2、6 rmdir指令 和 rm 指令

2、6、1 rmdir 指令


语法:rmdir [-p][dirName]


适用对象 :具有当前目录操作权限的所有使用者

功能 :删除空目录

常用选项 :

-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

 rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除目录命令。我们看具体实例:



cd3b467c429744ffbde4d435e899ddeb.png

 注意,rmdir是之恶能删除目录,不能删除普通文件。因此还是收到一定的局限。因此rmdir并不常用。常用的是下面的 rm 指令。

2、6、2 rm 指令


rm命令可以同时删除文件或目录


语法 : rm [-f-i-r-v][dirName/dir]

适用对象 :所有使用者

功能 :删除文件或目录

常用选项 :

-f 即使文件属性为只读(即写保护),亦直接删除;

-i 删除前逐一询问确认;

-r 删除目录及其下所有文件。

 rm指令是经常使用的一个指令。rm指令普通文件和目录均可以删除。其中最为常用的选项有两个:-f,-r。


 当一个目录不为空时,我们想删除整个目录及其内容,我们需要加上 -r 选项。其意思就是递归删除。在Linux下,文件和目录的建立就是以递归形式建立的。我们看如下实例


095717b249a546038dcab8538eaa4a0f.png

 -f 选项就是有强制删除的意思。有时候我们在删除文件时(在root用户下删除文件等情况),系统会提示我们是否要进行删除。如果我们并不想看到提问,我们就可以加上 -f 选项,进行强制删除。具体实例我们可看如下:

926e6bcade3d4542b52c0ec8d91fe91d.png

2、7 man 指令

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

man 语法 : man [ 选项 ] 命令

常用选项

-k 根据关键字搜索联机帮助

num 只在第num章节找

-a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。

 解释一下,man手册分为8章

1 是普通的命令;

2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件);

3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件;

5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义;

6 是给游戏留的,由各个游戏自己定义;

7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明;

8 是系统管理用的命令,这些命令只能由root使用,如ifconfig。

 man手册还是比较重要的,例如我们不知道某个指令怎么使用,我们就可以通过man手册进行查询该指令的相关操作的使用方法。例如下图:



ce1bb344d7d54c0fad26d52e53011550.png

当然,我们也可查看man手册。指令:man man。 具体如下:

 当然,我们最初的man手册可能并不是较为完善的man手册。我们可通过:yum install -y man-pages 来补充完善我们的man手册。


2、8 cat 指令

语法cat [选项][文件]

功能: 查看目标文件的内容

常用选项

  • -b 对非空输出行编号
  • -n 对输出的所有行编号
  • -s 不输出多行空行

 cat指令就是来查看目标文件的内容。




91a4886e51024e739a4992cf268f1463.png


 默认输出文件的内容并不带行编号。我们看其选项。

2、8、1 cat -n

 cat -n是对所有行输出行编号。我们看如下实例:



2、8、2 cat -b

 cat -b是对非空输出行编号。我们看如下实例:

2、8、3 cat -s

  cat -s是不输出多行空行(多行连续的空行,只输出一行)。我们结合输出行号一起看一下,效果更加明显。我们看如下实例:

68401e9b0e074b37a92fccd93b87ae78.png


2、9 echo 指令

 echo指令就是将一段字符串输出到指定文件。我们先看如下使用:

 通过上图我们可以看出,echo指令默认是输出到屏幕上。但是我们想输入到一个文件中呢?我们可以利用输出重定向符号 ‘ > ’


2、9、1 输出重定向符号  > (写入)

 我们结合下图来讲解:

 我们看到原本并没有 text.txt 文件但是我们通过输出重定向输出到 text.txt 文件中并没有显示错误。原因是默认情况下,如果文件不存在,就会先创建文件在对其进行输入

 我们多次输出到文件,如下:


c64a352d38644bc9833b45793e13bae3.png



发现还是只输出一条语句。原因是输出重定向  > 在对文件进行写入前,会先清空文件的内容,再对其进行写入。所以我们看到的只有一条语句。


2、9、2 输出重定向符号  >> (追加)

 在写入时,我们并不想删除文件中原本的内容,我们可选择使用输出重定向符号  > (写入)。 我们看下图:1ce1f9203a7543318b1e3afd9ba88eea.png

这样就相当于追加写入,写入时自动会换行,并且不会删除原文件的内容。

 本篇文章的讲解就先到这里,后续会更新出下篇文章的哦ovo


相关文章
|
17天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
178 73
|
28天前
|
Java Shell Linux
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
关于如何使用Shell脚本来解析Linux系统中的应用服务日志,提供了脚本实现的详细步骤和技巧,以及一些Shell编程的技能扩展。
23 0
【Linux入门技巧】新员工必看:用Shell脚本轻松解析应用服务日志
|
1月前
|
存储 Ubuntu Linux
Linux基础入门
Linux基础入门
16 1
|
1月前
|
Linux
Linux专栏09:Linux基本指令之时间日期指令及关机重启指令
Linux专栏09:Linux基本指令之时间日期指令及关机重启指令
53 2
|
23天前
|
存储 人工智能 Ubuntu
Linux指令学习(一)
Linux指令学习(一)
53 0
|
1月前
|
Ubuntu Linux Shell
Linux 终端入门
Linux 终端入门
16 0
|
1月前
|
安全 网络协议 Linux
保护你的 Linux VPS:入门指南
保护你的 Linux VPS:入门指南
15 0
|
1月前
|
安全 Unix Linux
【Linux】基本指令
【Linux】基本指令
|
1月前
|
存储 Linux 开发工具
【Linux】常见指令(下)
【Linux】常见指令(下)
|
1月前
|
存储 Linux 网络安全
【Linux】常见指令(上)
【Linux】常见指令(上)