Linux系列
文章目录
前言
在介绍Linux指令之前,大家要知道Linux中,"一切皆文件"这个核心概念。在接下来的介绍中我会适当引入,Wundows的界面操作,以方便大家理解。
一、Linux基础指令
由于指令之间配合使用更利于理解,所有接下来我们先学习,一些基础指令的基本功能,后面我们会对其进行详细讲解。
1.1、pwd指令
显示用户当前所在目录(路径)
/root就是我们执行pwd操作时,所在目录(路径)。'/'在Linux下为路径分割符。
相当于在Windows中这样的路径:
1.2、ls指令
ls指令是显示当前目录下所有的文件
这里什么都没有显示,是因为当前目录下,不存在文件。接下来我们学习如何创建文件。
1.3、touch指令
新建一个不存在的文件
我们在当前目录下新建了一个date文件,使用ls指令查看是否成功创建:
1.4、mkdir指令
在当前目录下创建一个下级目录
可以看到我们成功创建了一个目录文件。
1.5、cd指令
将当前工作目录改变到指定的目录下(也就是进入指定目录)
可以看到我们从/root目录下,进入到了/root/dir目录。
大家可以先在电脑上熟悉一下基本操作,接下来我们对指令进行详细介绍。
二、ls指令
上面介绍的,都是指令本身具有的基本功能,它本身还可以携带对应选项,来完成一些其他操作,接下来我们对几个常见的选项举例讲解。
语法: ls [选项][目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
2.1、'-l'选项
上面我们学习了,ls指令的基本功能---显示当前目录下的所有文件。
我们在ls指令后加上'-l'选项后,也可以达到显示显示文件的效果,但是前面多了一大串的信息,这些信息是什么呢?这其实就是文件的详细信息:文件名、创建时间等。在这里需要大家知道的是,显示信息前面第一个字符,代表文件属性:
'-':代表普通文件
'd':代表目录文件
2.2、'-a'选项
"ls -a"相较于"ls"多显示出来了,那么多文件,而且这些文件前面都存在一个'.',其实以点开头的文件,在Linux下为隐藏文件,而'-a'选项的作用是列出目录下的所有文件,包括以 . 开头的隐含文件。当然在Windows系统下,也存在隐藏文件,大家感兴趣可以去了解一些。
这里我给大家演
示一些创建隐藏文件:
指令选项间,是可以相互配合使用的:
关于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 一行只输出一个文件。
三、pwd指令
语法: pwd
功能:显示用户当前所在的目录
这个指令比较简单,并无常用指令。
四、cd指令
语法:cd 目录名
功能:改变工作目录。将当前工作目录改变到指定的目录下。
接下来我们演示一下:
当前我们所处的/root路径下,一个dir的目录文件,我们进入这个目录:
可以看到我们成功进入。
进入文件后我们使用'ls -al'显示处内部文件信息,虽然我们进入后并没有创建文件,但是目录下却又两个隐藏的目录文件(前面我,我们说过,'d'代表目录文件),他们是干什么的呢?我们不妨试着进入它的内部来看一下。
首先我们进入一个点的文件,发现所处路径无变化,接着我们进入两个点的,目录文件,发现路径变为了它的上级目录。其实这两个默认的文件,一个点的代表当前路径,两个点的代表上级路径,所以我们经常使用它来返回上级路径(目录)。**
使用:**
cd ... : 返回上级目录
cd /home/litao/linux/ : 绝对路径
cd .../day02/ : 相对路径
cd ~:进入用户家目
cd -:返回最近访问目录
剩下的就交给大家自己探索了
五、touch指令
语法:touch [选项]... 文件...
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。(对于初学者,只需要知道它可以创建文件即可)
使用指令:
-a 或--time=atime或--time=access或--time=use只更改存取时间。
-c 或--no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或--time=mtime或--time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。
六、mkdir指令
语法:mkdir [选项] dirname...
功能:在当前目录下创建一个名为 "dirname"的目录
在我们上面使用它创建目录时,每次只可以创建一个,而且要在下级目录下创建目录,就要先进入下级目录,当我们需要创建多个目录时,这无疑是很麻烦的。
6.1、-p选项
我们可以使用-p选项配合路径分割符,一次创建多个目录:
tree指令放在下篇介绍了,这里为了大家直观的体会,先拿出来用一下。
七、rmdir指令rm指令
rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。
语法:rmdir
适用对象:具有当前目录操作权限的所有使用者
功能:删除空目录
当前在/root路径下,有一个名为hello的文件目录,接下来我们将他删除。
可以看到成功删除,但是对于dir1这样目录文件下有多个下级目录的,就不能直接删除。
rm命令可以同时删除文件或目录
语法:rm [-f-i-r-v][dirName/dir]
适用对象:所有使用者
功能:删除文件或目录
删除文件:
删除时,系统会询问是否删除
删除目录是操作和上面相同,就不演示了,接下来我们看如何删除多级目录。
直接删除它是不允许的,必须配合"-r"指令递归删除。
可以看到在删除时,它每次都会对我们询问,这个过程中但凡有一次我们,不同意删除,它就会删除失败,这是很麻烦的事,这时,我们就需要"-f"指令来帮助我们。
这时他就不会再询问了,大家可以尝试一下。
-f 即使文件属性为只读(即写保护),亦直接删除
-i 删除前逐一询问确认
-r 删除目录及其下所有文件