ls指令
功能:对于目录该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名与其他信息。
常用选项:
1)-a列出目录下所有文件,包括以.开头的隐藏文件
其中Linux中每个目录下默认存在两个隐含文件 . 和 ..( . 代表当前目录,.. 代表当前目录的上级目录)。
2)-d是将目录像文件一样显示,而不是显示其下的文件(只想看目录,而不想看目录的内容)。如ls -d 指定目录
3)-l是列出文件的详细信息。
我们也可以将ls -l简写为 l l 。
4)-F 在每个文件名后附上一个字符以说明该文件的类型。(“*”表示可执行的普通文件,“/”表示目录,“@”表示符号链接,“|”表示FIFOs,“=”表示套接字sockets)
pwd指令
功能:显示用户当前所在的目录
whoami 指令
功能:显示用户当前的身份。
cd指令
Linux系统中。磁盘上的文件和目录被组成一颗目录树,每个节点都是目录或文件。其中叶子节点一定是空目录或者非目录文件路上节点一定是非空目录。
在Windows当中,我们可以通过鼠标点击的方式在各个目录之间来回跳转,而在Linux当中我们需要用到cd指令来实现该操作。
功能:改变工作目录。将当前工作目录改变到指定的目录下
举例:
1)cd .. (返回上级目录)。
2)cd 绝对路径(我们把从/开始定位到指定位置具有唯一性的路径成为绝对路径)。示例如下:cd /home/litao/linux/
3)cd 相对路径(以自己当前所在的路径为起始参照位置来进行特定文件的定位)。示例如下: . . /day02/
4) cd ~:进入用户家目
5)cd -:返回最近访问过的目录
clear指令
功能:清空屏幕
touch指令
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项:
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 使用指定的日期时间,而非现在的时间
mkdir指令
功能:在当前目录下创建一个名为“xxx”的目录
常用选项:
1)-p dirname可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
rmdir指令&&rm指令
rmdir是一个与mkdir相对应的指令,mkdir是建立目录,而rmdir是删除目录。
功能:删除空目录。 适用对象:具有当前操作权限的所有使用者
常用选项:-p 当子目录被删除后如果父目录也变成空目录的话就连同父目录一起删除
其中rmdir有很大的局限性,它只能删除空目录。若要删除其他文件则需要用到rm指令
功能:删除文件或者目录 适用对象:所有使用者
常用选项:
1)-i 删除之前逐一询问确认。
2)-f 即使文件属性为只读(即写保护),亦直接删除。
3)-r 删除目录及其下所有文件(递归式删除)。
补充:如果要删除当前目录下的所有文件可以使用通配符*。但我们一般使用通配符删除当前目录下的所有文件时,建议在通配符 * 前面加上 . / 告知系统要删除的资源在当前目录下( . 代表当前目录)。
man指令
Linux的指令有很多参数,我们不一定能全部记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的指令便是man。
功能: 查看指令的使用规则等。
cp指令
在Windows中我们可以通过Ctrl+C和Ctrl+V将一个地方的文件或目录复制一份到另一个地方,我们若是在Linux当中想要完成该操作,就要用到cp指令。
功能:复制文件或目录。
其中我们需要注意的是:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
常用选项:
1)-f 强行复制文件或目录,不论目标文件或目录是否已经存在。
2)-i 覆盖文件之前先询问用户。
3)-r 或 -R 递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的形态不属于目录或符号链接,则一律视为普通文件处理。
mv指令
mv命令是move的缩写,可以用来移动文件或者将文件改名,是Linux系统下常用的命令,经常用来备份文件或者目录。
功能: 视mv指令当中两个参数的不同而不同。
1)当第二个参数是不存在的名称时,mv指令完成文件重命名或目录重命名
2)当第二个参数是已存在目录名称时,mv指令将文件移动至该目录中
常用选项:
1)-f 强制的意思(force),如果目标文件已经存在,不会询问而直接覆盖。
2)-i 若目标文件已经存在,则会询问是否覆盖。
cat指令
在Linux当中无法像Windows一样用鼠标点开某一文件进行阅读,要想阅读文件可以使用cat指令。
功能:查看目标文件的内容
常用选项:
1)-b 对非空输出行编号。
2)-n 对输出的所有行编号。
3)-s 禁止重复的空输出行。
注意: cat指令会将目标文件内容全部打印到屏幕上。若是目标文件内容过大,则会导致刷屏(直到将文件内容全部打印到屏幕上)。因此cat指令一般仅适用于查看内容较少的文件。
echo
echo是向显示器文件(Linux下一切皆文件)中写入东西 。
我们既然可以向显示器文件中写入,那么也可以向普通文件中写入,下面我们先来看一个示例
我们发现我们用echo向目标文件写入时是覆盖写入(先清空文件再写入新内容),其中'>'这个符号是输出重定向,它可以将本来应该显示到显示器的内容打印到文件中。
我们再来看一个例子
我们又发现我们写入的内容不会覆盖原有的内容,而是追加到原有内容的后面,其中'>>'这个符号是追加重定向的意思。
而下面的'<'是输入重定向的意思,本来该从键盘文件(Linux下一切皆文件)上读取,现在不在从键盘读取,从指定的文件读取。
我们再做一点补充:在一个.c文件中写代码并进行编译执行代码。
1.我们首先输入如下这条指令。
2.按下回车键后会跳转到一个界面,我们在如下界面写入想要执行的代码即可。
3.接着再对上述代码进行编译
4.编译完成后会生成一个可执行程序,最后再执行这个可执行程序即可。
more指令
上面说到,cat指令仅适用于查看内容较少的文件,我们若是要查看海量信息文件,则可以适用more指令。
功能:查看目标文件的内容
说明:more指令只能通过按回车键进行下翻操作,无法进行上翻操作,并且它只打印一屏幕的信息便停止打印。
less指令
less的用法比起more更加具有弹性,less可以往前往后随意翻看文件,因而更容易查看一个文件的内容。
功能:less与more类似,而且less在查看之前不会加载整个文件
注意:我们可以使用[PageUp]和[PageDown]按键来往前或者往后翻看文件内容。
head指令
功能:用于显示文件的开头至标准输出中,默认head指令打印其相应文件的开头10行。
常用选项:
1)-n 需要显示的行数。
tail指令
功能: 用于显示文件的末尾至标准输出中,默认tail指令打印其相应文件的末尾10行。
常用选项:
1)-n 需要显示的行数。
拓展:如何从文件中读取一段内容
我们来看一个例子,例如某test.txt文件中有一万行内容,我们如何读取其中的第800行至888行内容呢?由前面学习过的head和tail知识,我们首先想到可以先用head读取test.txt文件中的前888行存储到文件tmp.txt中,然后将tmp.txt中后88行内容打印输出即可
说明:“ > ” 是输出重定向的意思,它将本来应该输出到屏幕上的内容输出重定向到tmp.txt文件中。
像上述这样写还要创建临时文件,显然比较麻烦。我们有一种简便的方式可以实现该操作,该方式需要用到“命令行管道”。我们知道管道是用于传输某种资源的,而在计算机中最重要的资源就是数据。在指令中管道用“|”来表示,它的作用就是将第一个程序运行的结果交给第二个程序,从而实现了连续加工。
因此我们可以将test.txt文件的前888行从管道左侧输入管道,并在管道右侧读取数据进行进一步的操作即可。
date指令
功能: 用于显示时间、设置时间、完成时间与时间戳之间的相互转换等。
用法一: 用于显示时间,使用者可以选定欲显示的格式,格式设定为一个加号,后接数个标记,其中常用的标记如下:
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 @时间戳 将时间戳转换为时间。
cal指令
cal指令可以用于显示公历(阳历)日历。
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1~9999),如有两个参数,则表示月份和年份。
常用选项:
1)-3 显示系统前一个月、当前月以及下一个月的日历。
2)-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)。
3)-y 显示当前年份的日历。
find指令
功能: 用于在文件树中查找文件,并作出相应的处理(可能访问磁盘,因而效率比较低)。
常用选项:
1)-name 按照文件名查找文件。
说明:这句指令的意思是在主工作目录下查找名为test.txt的文件
2)-size 按照文件大小查找文件。
这三句指令的意思分别是在lesson3目录下查找文件的大小大于(小于/等于)50M的文件。
which指令
Linux当中的每个指令其实都是用计算机语言编写出的可执行程序,这些程序都存储在文件当中,我们可以通过which指令查看某一指令的程序文件所在路径。
功能: 用于查找某一指令的程序文件所在路径。
当我们执行某一指令时,实际是调用其可执行程序,因此我们还可以通过其程序文件的所在路径进行调用该指令。
alias指令
当你觉得某一指令太长时,你可以使用alias指令给它起一个别名。
功能: 可以用于给指令取别名。
grep指令
grep指令类似于关键词搜索(行过滤器)。
功能: 在文件中搜索字符串,将找到的行打印出来。
说明:在test.txt文件中查找含有字符串'111'的行
常用选项:
1)-i 忽略大小写进行查找。
2)-n 输出行号。
注意:我们还可以两个结合使用
3)-v 反向选择,显示出没有待搜索字符串的行。
拓展:如何添加与删除用户?
我们购买了云服务器之后得到的是root账号。由于root权限过大,为了避免自己对某些系统文件进行误操作,我们最好创建一个普通用户的账号来进行使用。
因此,下面我们先来看看如何添加一个普通用户的账号
第一步: 输入adduser zyc(zyc是待创建的用户的用户名)。
第二步: 输入passwd zyc进行设置密码。
注意:在Linux中输入密码时,密码不会显示
第三步: 再次输入密码进行确认。
当我们看到下面提示说明用户创建成功。
同时我们可以在家目录下看到该用户的用户名
既然我们已经学会了如何创建新用户,下面我们来看一下如何删除用户。
输入userdel -r lighthouse(lighthouse是要删除的用户的用户名)。
此时我们再次查看家目录会发现用户lighthouse不存在了。
注意: 创建和删除用户的操作者都必须是root用户,而不是普通用户。
zip指令
功能: 将目录或文件打包压缩成zip格式。
常用选项:
1)-r 递归处理,将指定目录下的所有文件和子目录一并处理。
说明:将d1目录下的所有文件和子目录一并处理打包压缩成tmp.zip压缩文件。
unzip指令
功能: 将压缩文件解压到指定目录当中。
注意: 解压文件时若不带-d选项和目标目录,则默认解压到当前目录下。
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 解压到指定目录。
打包示例:说明:将当前目录下的所有子目录以及文件一并打包并且压缩,压缩包为tmp.tgz。
解包示例:
我们使用tar还可以不解开压缩包,直接查看里面内容:
file指令
功能: 查看文件的更多属性信息。
bc指令
bc指令就是Linux下的计算器。
功能: 进行运算。
uname指令
功能: 用于获取电脑和操作系统的相关信息。
常用选项:
1)-r 输出电脑和操作系统相关信息。
2)-a 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称。
几个重要的热键
1)上下按键。上下按键在Linux当中存储的是历史命令,通过按上下键我们可以查看我们最近敲的命令。我们也可以使用history指令查看历史命令。
2)Ctrl+D。退出当前命令行。
3)Ctrl+C。让当前程序停掉(终止失控程序)。
4)Tab。自动补齐功能。
5)Ctrl+R。搜索历史命令。
关机指令
语法: shutdown 选项
常见选项:
1)-h 将系统的服务停掉后,立即关机。
2)-r 将系统的服务停掉之后就重新启动。
3)-t sec 经过sec秒后关机。
注: 所有关机指令只能由root用户执行。