Linux中各个指令是相互联系的,所以一开始学习Linux时,对指令很陌生是正常的,不用花费大量的时间去刻意的记忆,在我们一次次的使用当中,这些指令自然会烂熟于心。
简单看看各个指令的功能
ls指令
显示当前目录下的文件
pwd指令
显示用户当前所处的目录
cd指令
改变到指定的路径
touch指令
新建一个普通文件
mkdir指令
创建一个新目录
ls指令
前边提到了ls指令可以显示当前目录下的全部文件,侧重于不同的板块,它还有很多的其他的选项。
例如我们加一个-a就可以显示一个目录下的所有文件(包括隐藏文件)。
. 和 ..就是隐藏文件。Linux中任何一个目录(包括空目录)中都会存在 .和..。目录就是我们理解的文件夹,文件由属性和内容两部分构成创建的一个新的文件夹(不额外储存任何信息)那么它任然会占用内存,储存文件的属性也需要内存;而学习文件无非就是对文件的内容和属性进行操作。用stat命令可以查看一个文件的详细信息,文件的时间包括三部分--ACM。
A(Access Time, atime)访问时间,记录文件最后被访问的时间。每次读取文件时,这个时间会更新。
C(Change Time, ctime)修改时间,记录文件元数据(如权限或所有者)最后被更改的时间。与文件内容无关,但如果文件的权限或其他属性被修改,这个时间会更新。
M(Modification Time, mtime)状态改变时间,记录文件内容最后被修改的时间。当文件内容被写入时,此时间会更新。
.指向(当前目录)当前的目录本身 ,而..指向(上级目录)当前目录的父目录。这是不是和我们数据结构中学习的二叉树很相似呢,Linux的文件结构就是一棵以/(根节点)开头的多叉树。并且子叶节点一定是普通文件或者空目录,非子叶节点一定是非空目录。windows的文件结构也一样,也是由根目录(此电脑)开头的多叉树。
通过..我们就可以切换到上一级目录
那么一直使用..向父目录切换,会发生什么呢?
我们发现,最终会停在根目录,就无法向上一级目录切换了。
ls -l可以以长格式显示文件的内容
在window中,以文件的扩展名(后缀)来区分文件
以exe结尾的是可执行程序:
PDF文件的后缀就是pdf。
在Linux中以d开头的是目录(文件夹),以-开头的是普通文件
在Linux中,几乎所有的命令本质都是可执行文件,当我们把自己写的程序编译后生成可执行程序后 再拷贝到当前路径下就可以像输入命令一样使用它,这里先埋个坑,这个我们后边再实现。
对于ls指令只了解到这里,这里是它其他的常用选项。
-a
:显示所有文件,包括隐藏文件(以.
开头的文件)。-l
:以长格式显示详细信息,包括权限、所有者、文件大小和修改时间。-h
:与-l
结合使用,显示人类可读的文件大小(例如 KB, MB)。-R
:递归地列出所有子目录。-t
:按修改时间排序,最近的文件排在前面。-S
:按文件大小排序。-r
:反向排序。 pwd指令
在终端中输入pwd后,按下回车键,系统会输出当前所在的目录路径。
常用选项
-L
(或 --logical
)
pwd
命令的默认行为。 -P
(或 --physical
)
cd命令
相对路径和绝对路径
绝对路径
定义:绝对路径是从根目录开始,描述文件或目录的完整路径。示例:在Unix/Linux系统中,绝对路径通常以/
开头,比如 /home/user/documents/file.txt
;在Windows系统中,路径可能以驱动器字母开头,例如 C:\Users\User\Documents\file.txt
。特点:无论当前工作目录是什么,绝对路径总是指向同一个位置。 以根目录为参考访问各个目录
相对路径
定义:相对路径是相对于当前工作目录来描述文件或目录的路径。示例:如果当前工作目录是/home/user
,那么 documents/file.txt
就是一个相对路径,指向 /home/user/documents/file.txt
。特点:相对路径依赖于当前工作目录,可能在不同的上下文中指向不同的位置。
通过..访问上一路径,参考当前目录。
用法
常用示例
更改到指定目录:
cd /path/to/directory
返回上一级目录:
cd ..
3.返回用户主目录(家目录):
cd ~
4.更改到上一次访问的目录:
cd -
用户刚登录时所处的路径就是家目录。
touch指令
touch指令可以新建一个普通文件,也可以改变文档或目录的日期和时间。
常用选项
-a
仅更新文件的访问时间(Access time)。
touch -a filename
-m
仅更新文件的修改时间(Modification time)。
touch -m filename
-c
如果文件不存在,不会创建新文件。只会在文件存在时更新时间戳。
touch -c filename
-t
使用指定的时间戳格式设置时间,格式为 [[CC]YY]MMDDhhmm[.ss]
。例如:
touch -t 202310031230.00 filename
这将设置文件的时间戳为 2023 年 10 月 3 日 12:30:00。
-d
使用指定的日期字符串作为时间戳。可以使用人类可读的日期格式。
touch -d "2023-10-03 12:30:00" filename
-r
使用另一个文件的时间戳来更新目标文件的时间戳。
touch -r referencefile targetfile
--help
显示帮助信息。
touch --help
--version
显示版本信息。
touch --version
mkdir指令
-p
可以连续创建一串目录
-m
设置新目录的权限模式,格式为八进制数字。例如,设置权限为 755:
mkdir -m 755 newdir
--help
显示帮助信息。
mkdir --help
--version
显示版本信息。
mkdir --version