个人主页:Lei宝啊
愿所有美好如期而遇
目录
01.ls指令
02.pwd指令
03.cd指令
04.touch指令
05.mkdir指令(重要)
06.rmdir&&rm指令(重要)
07.man指令(重要)
08.cp指令(重要)
09.mv指令(重要)
10.cat指令
nano指令
echo指令
输出重定向
追加重定向
输入重定向
清空重定向
11.more指令
12.less指令(重要)
13.head指令
14.tail指令
15.时间相关的指令
16.cal指令
17.find指令(重要)
which指令
18.grep指令
sort指令
uniq指令
wc -l 指令
19.zip/unzip指令
20.tar指令(重要)
21.几个比较重要的热键
22.关机指令
01.ls指令
语法: ls [选项][目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
这就是我的两个目录,可以直接ls。
接下来我们跟上选项试试,下面我们会介绍比较常用的几个选项。
ls -l 列出当前目录下所有文件的详细信息
如果直接ls -l ,将会列出当前目录下所有文件和目录的详细信息,如果后面跟目录,则列出那个目录下所有文件和目录的详细信息,如果后面跟文件,则列出该文件的详细信息。
ls -a 列出当前目录下的所有文件,包括以 . 开头的隐藏文件,就如同Windows下的隐藏文件一样
ls -a -l 列出目录下的所有文件,包括以 . 开头的隐藏文件,及其详细信息,可以写为ls -al
,ls -la,都可以。
ls -d 将目录像文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
这些入门暂时够用,开始下一个指令。
02.pwd指令
语法: pwd
功能:显示用户当前所在的目录
选项:无
03.cd指令
语法:cd 目录名
功能:改变工作目录。将当前工作目录改变到指定的目录下
Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件,如同一颗多叉树,而他的每一个叶子节点一定是空目录或者普通文件。
cd .. 返回上级目录
cd [绝对路径]
cd [相对路径]
cd ~ 进入用户家目录
cd - 返回最近访问目录
04.touch指令
语法:touch [选项]... 文件...
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
我们一般使用这个指令新建文件,而不是修改时间。
也可以一次新建多个普通文件。
05.mkdir指令(重要)
语法:mkdir [选项] dirname...
功能:在当前目录下创建一个名为 “dirname”的目录
当我们想要递归式建目录时,可以这样做。
-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录
06.rmdir&&rm指令(重要)
rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令
rmdir
语法:rmdir [-p][dirName]
功能:删除空目录
如果删的目录非空,会这样。
而且他不可以删除文件。
-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除
rm
语法:rm [-f-i-r-v][dirName/dir]
功能:删除文件或目录
rm命令可以同时删除文件或目录(通配符*),加上*表示选中该目录下所有,不包括隐藏文件。
-rf 递归式强制删除目录及其下所有文件
-r 删除目录及其下所有文件
-f 强制删除
因为我们是root用户,所有文件默认重要,所以不加-f时删除,会询问你是否删除,像这样。
加上-f就不会询问了。
-r为递归式删除目录及其所有文件
所以我们今后删除目录与文件使用rm就OK了,不需要再用rmdir了,直接无脑rm -rf 用起来
07.man指令(重要)
Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是man
语法: man [选项] 命令
我们可以先查询一下man这个指令如何使用。
我们发现左上角有个MAN(1),这代表着我们在1号手册中查询到了该指令用法。
下面有9个选项,而我们只需要了解123就好,其他的基本用不上,1号手册是查询指令用法,2号手册是关于系统的,暂时不用管,3号手册是查询库函数,主要是C语言的。
man指令默认从上到下开始查询,1号手册查不到就去2号,以此类推,直到我们找到为止。
同时我们可以指定手册去查询。
08.cp指令(重要)
语法:cp [选项] 源文件或目录 目标文件或目录
功能: 复制文件或目录
说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
我们先来复制一个普通文件。
接着复制一个空目录。复制目录时要加-r
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
若目标目录不存在,则创建目标目录后再复制过去
09.mv指令(重要)
mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。
语法: mv [选项] 源文件或目录 目标文件或目录
第一个功能:移动文件或者目录
要注意的是,不可以把自己移动到自己里。
第二个功能:修改文件或者目录名字,当目标不存在时修改名字。
如果目标里已经有了我们要复制的文件,会询问是否覆盖
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
10.cat指令
语法:cat [选项][文件]
功能: 查看目标文件的内容
使用cat指令前我们要先了解另一个指令:nano
nano指令
类似于Windows下的记事本,使用nano打开一个文件进行写入内容
然后回车打开文件,写一段代码
接着ctrl X 然后输入y,回车退出来、
接下来我们就可以用cat来查看我们写的内容了。
另外我们还需要了解一个指令:echo指令
echo指令
将双引号里的内容打印到下一行并自动换行
接下来我们引入一个概念:输出重定向
输出重定向
我们这一次不想让他打印到显示器上,而是让他写入文件中,用>指定方向,所以我们叫输出重定向。
我们再来看一个现象.
发现了吗,我们的echo和>在每一次向文件的输出中,都会先清空文件,再输入进去,那么如何使其不清空而增加进去呢?
我们就要说到:追加重定向
追加重定向
于是我们懂了,echo和>>可以追加。
既然有输出重定向,那么有没有输入重定向呢?
输入重定向
当然有,不过这似乎有些多此一举,我们不是可以直接cat吗,加<干什么,这里只是让大家明白有这么一个东西而已。
再介绍一个:清空重定向
清空重定向
于是我们明白了,> 加上文件名,就可以清空他的内容了,其实他还有一个作用,创建新文件。
但是呢,和touch比,差点东西。
不可以同时创建多个文件,所以创建单个文件可以用,同时创建多个文件还是要用touch
cat到此为止了吗?我们还没有说选项,而且他还有一个用法。
接下来我们在一个文件里输入点内容来说选项
-n 对输出的所有行编号
-s 不输出多行空行
-b 对非空输出行编号
cat完结撒花~
11.more指令
这个指令已经被淘汰了,基本上不用,我们现在用less,但我们还是要了解一下
语法:more [选项][文件]
功能:more命令,功能类似 cat
在此之前,我们手搓一个长点的文件,然后使用more
下面的内容我们想要翻看的话只能按回车,他才会一行一行向下翻,其他向上向下键是没有用的。
我们按ctrl c可以强行退出。
但是less的话我们就可以上下翻,而且还可以输入行号进行跳转。
12.less指令(重要)
语法: less [参数] 文件
功能:
less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
-N 显示每行的行号
输入要跳转的行号
回车
13.head指令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。
语法: head [参数]... [文件]...
功能:head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行
默认输出前10行
指定输出前3行
14.tail指令
语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件
15.时间相关的指令
date显示
date 指定格式显示时间: date +%Y:%m:%d
date 用法:date [OPTION]... [+FORMAT]
date +%s,时间戳,输出的数字为秒,从1970年1月1日晚上12点开始计时到现在。
常用于计算一个范围内的时间,比如算出前天和今天的时间戳,我们就能够确定一个范围,通过这个范围去找寻我们想找的时间点的日志。
16.cal指令
cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。
命令格式: cal [参数][月份][年份]
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份
默认今年当月
指定月年
上个月,当月,下个月
指定显示整年
17.find指令(重要)
语法: find pathname -options
功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
常用选项:
-name 按照文件名查找文件。
指定路径搜索
这里额外拓展一个指令:which
which指令
用于查询指令的路径
18.grep指令
语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行
先造个文件出来
补充指令1:sort
sort指令
按照每行从前往后ASCII值从小到大进行排序
补充指令2:uniq
uniq指令
去掉相邻的重复行
uniq -c 去掉重复行后在每行前写出该行原来行数
补充指令3:wc -l
wc -l 指令
word count,统计行数
19.zip/unzip指令
语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式
常用选项:
-r 递 归处理,将指定目录下的所有文件和子目录一并处理
哦吼!!!明显不对,少了什么呢?
这下我们明白了,要加-r。
我们默认解压缩到当前目录,但是也可以改变解压缩后的目录。
解压到tmp目录:unzip test2.zip -d /tmp
20.tar指令(重要)
tar [-cxtzjvf] 文件与目录 .... 参数
常用选项:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录
21.几个比较重要的热键
[Tab]按键---具有『命令补全』和『档案补齐』的功能
[Ctrl]-c按键---让当前的程序『停掉』
[Ctrl]-d按键---通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可
以用来取代exit
比如说你只记得有个指令wh开头,但是想不起来了,那就Tab两下,就会出现如下 ,如果不出现或者Tab不出来,没关系,不是你的问题,是你的Linux厂商的问题,很正常。
ctrl c,让正在进行的指令强行停下,也就是说,只要ctrl c,指令就停下来了。
ctrl d,玩得比较花,按下他不用鼠标点关闭,Xshell就退出关闭了。
22.关机指令
语法:shutdown [选项] ** 常见选项:**
-h : 将系统的服务停掉后,立即关机。
-r : 在将系统的服务停掉之后就重新启动
-t sec : -t 后面加秒数,亦即『过几秒后关机』的意思
这里不做演示......
学会这些指令,那么恭喜你,基本上入门啦