【Linux】基础指令 1

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后,按下回车键,系统会输出当前所在的目录路径。

常用选项

  1. -L (或 --logical

    • 输出当前工作目录的逻辑路径,包含符号链接的路径。
    • 这是 pwd 命令的默认行为。
  2. -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
  • 特点:相对路径依赖于当前工作目录,可能在不同的上下文中指向不同的位置。

通过..访问上一路径,参考当前目录。

用法

常用示例

  1. 更改到指定目录

    cd /path/to/directory

  2. 返回上一级目录

    cd ..

3.返回用户主目录(家目录)

cd ~

4.更改到上一次访问的目录

cd -

用户刚登录时所处的路径就是家目录。

touch指令

touch指令可以新建一个普通文件,也可以改变文档或目录的日期和时间。

常用选项

  1. -a

    仅更新文件的访问时间(Access time)。

    touch -a filename

  2. -m

    仅更新文件的修改时间(Modification time)。

    touch -m filename

  3. -c

    如果文件不存在,不会创建新文件。只会在文件存在时更新时间戳。

    touch -c filename

  4. -t

    使用指定的时间戳格式设置时间,格式为 [[CC]YY]MMDDhhmm[.ss]。例如:

    touch -t 202310031230.00 filename

    这将设置文件的时间戳为 2023 年 10 月 3 日 12:30:00。

  5. -d

    使用指定的日期字符串作为时间戳。可以使用人类可读的日期格式。

    touch -d "2023-10-03 12:30:00" filename

  6. -r

    使用另一个文件的时间戳来更新目标文件的时间戳。

    touch -r referencefile targetfile

  7. --help

    显示帮助信息。

    touch --help

  8. --version

    显示版本信息。

    touch --version

mkdir指令

  1. -p

    可以连续创建一串目录

  2. -m

    设置新目录的权限模式,格式为八进制数字。例如,设置权限为 755:

    mkdir -m 755 newdir

  3. --help

    显示帮助信息。

    mkdir --help

  4. --version

    显示版本信息。

    mkdir --version

相关推荐
HLC++11 小时前
Linux的进程间通信
android·linux·服务器
华清远见IT开放实验室12 小时前
实验室建设案例 | 石家庄科技信息职业学院嵌入式实验室——从底层硬件到系统应用,一所应用型高校的嵌入式人才培养这样落地
linux·arm开发·stm32·嵌入式硬件·高校·实验室建设
groundhappy15 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python
通信小小昕15 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
张小姐的猫16 小时前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
栩栩云生17 小时前
AI 写代码犯的错,早被写进了错题集
linux·安全·ai编程
imc.1118 小时前
linux基础IO
linux·运维·服务器
BelongPanda20 小时前
Linux Nginx 纯手动 Let‘s Encrypt 泛域名证书配置教程
linux·nginx
酷可达拉斯20 小时前
Linux操作系统-shell编程(0)
linux·运维·服务器·python·云计算
2301_7779983420 小时前
Linux中断机制:操作系统如何高效运行
linux·运维·服务器