【Linux】基本的指令(一)

大家好我是沐曦希💕


1. 前言

没有搭建好Linux和下载XShell的看官,可以移步到Linux环境搭建与登陆

1.1 操作系统os概念

使计算机更好用! 这是操作系统的根本要义!!
在这里插入图片描述
操作系统处于软硬件之间,起承上启下的效果。对上给应用提供接口,所以软件可以被编写出来。

操作系统是管理软件,管理软硬件
对上:提供良好稳定安全的运行环境
对下:管理软硬件资源

在发展过程中是先有键盘后有鼠标,意味着先有命令行才有图形化界面。

1.2 文件

文件是由文件内容和文件的属性构成。
那么空文件是否占磁盘空间呢?
占,因为文件内容和文件的属性都是数据,其中文件属性是元数据。

所以学习操作文件的方法是:
1.操作文件内容
2.操作文件属性

文件之间也有区别:普通文件和目录
其中目录->Windows下的文件夹->保存其他文件的场所。

2.ls 指令

语法: ls [选项][目录或文件]
功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

[root@iZ2ze79kprp9cai14dsma8Z File]# ls
//罗列出当前的路径下所有文件和目录名称
test.c  test.txt

而一条命名除了本身,还可以携带选项
常用选项

-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 一行只输出一个文件。

举一些选项:

[root@iZ2ze79kprp9cai14dsma8Z File]# ls -l
//显示除了文件名以外的文件属性和信息
total 4
-rw-r--r-- 1 root root    0 Sep 25 13:12 test.c
drwxr-xr-x 2 root root 4096 Sep 25 12:36 test.txt
[root@iZ2ze79kprp9cai14dsma8Z File]# ls -a
//显示当前目录下的所有文件包括隐藏的文件
.  ..  test.c  test.txt
[root@iZ2ze79kprp9cai14dsma8Z File]# ls -al
//是-a和-l的效果的结合,可以写成ls -a -l
total 12
drwxr-xr-x  3 root root 4096 Sep 25 13:12 .
dr-xr-x---. 8 root root 4096 Sep 25 13:34 ..
-rw-r--r--  1 root root    0 Sep 25 13:12 test.c
drwxr-xr-x  2 root root 4096 Sep 25 12:36 test.txt

我们看到ls如果带-a选项,会出现一个点和两个点。在这里一个点表示当前路径,两个点表示上级路径。比如下面的cd …返回上级路径。
在这里插入图片描述

在Linux中,以点开头的文件我们叫做隐藏文件
ls -a:显示所有文件,包括隐藏文件。也就是说,ls不显示隐藏文件

相当于Windows下的查看隐藏项目
在这里插入图片描述
其中选项ll和选项ls -l的显示结果一样。

[root@iZ2ze79kprp9cai14dsma8Z ~]# ll
total 12
drwxr-xr-x 3 root root 4096 Sep 26 10:39 File
drwxr-xr-x 2 root root 4096 Sep 25 13:41 lesson2
drwxr-xr-x 2 root root 4096 Sep 25 12:27 Linux
[root@iZ2ze79kprp9cai14dsma8Z ~]# ls -l
total 12
drwxr-xr-x 3 root root 4096 Sep 26 10:39 File
drwxr-xr-x 2 root root 4096 Sep 25 13:41 lesson2
drwxr-xr-x 2 root root 4096 Sep 25 12:27 Linux

而对于ls -Rl,就是展开子目录下的文件

[root@iZ2ze79kprp9cai14dsma8Z ~]# ls -Rl
.:
total 12
drwxr-xr-x 3 root root 4096 Sep 26 10:39 File
drwxr-xr-x 2 root root 4096 Sep 25 13:41 lesson2
drwxr-xr-x 2 root root 4096 Sep 25 12:27 Linux

./File:
total 20
-rwxr-xr-x 1 root root 8440 Sep 26 10:39 test
-rw-r--r-- 1 root root   58 Sep 26 10:38 test.c
drwxr-xr-x 2 root root 4096 Sep 25 12:36 test.txt

./File/test.txt:
total 0

./lesson2:
total 224
-rw-r--r-- 1 root root 228914 Sep 25 13:49 106.txt

./Linux:
total 8
-rw-r--r-- 1 root root 20 Sep 25 12:29 9.25test.cpp
-rw-r--r-- 1 root root  0 Sep 23 22:47 test.cpp
-rw-r--r-- 1 root root 12 Sep 25 12:28 test.txt

3.pwd命令

语法: pwd
功能:显示用户当前所在的目录

[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
//显示当前用户所处的路径
/root

在Windows下,我们很容易就能够找到路径:在这里\就是路径分隔符
在这里插入图片描述
而在Linux下,是以 / 作为路径分隔符。
需要注意的是:Linux下的第一个 / 是 根目录
为什么我们喜欢用路径来表示一个文件呢?
我们一般从 / (根目录)开始到指定文件路径具有唯一性。
即路径+文件名 = 具有唯一性,类似于树,叶子节点到根具有具有唯一性。

绝对路径:从根目录开始,依次按树状结构向后进行查找定义称为绝对路径
相对路径:相对于当前所处的路径,当前的相对位置查找所处的位置

在日常操作中用比较多的是相对路径

[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root
[root@iZ2ze79kprp9cai14dsma8Z ~]# cd ./lesson2
//.表示当前目录
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# pwd
/root/lesson2

而绝对路径比较官方,比如在配置文件中的一项配置。

[root@iZ2ze79kprp9cai14dsma8Z lesson2]# pwd
/root/lesson2
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# cd /root/Linux
[root@iZ2ze79kprp9cai14dsma8Z Linux]# pwd
/root/Linux

怎么查看当前的用户是谁?可以输入whoami指令来显示

[root@iZ2ze79kprp9cai14dsma8Z Linux]# whoami
root

在VS下退出Ctrl+Z,而Linux下退出时Ctrl+D

在这里插入图片描述

4.cd 指令

Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。
在这里插入图片描述
类似于树形结构,分为叶子节点和路上节点。对于叶子节点,既最后一层,可以有普通文件或者空目录,而路上节点只能是目录。即在Linux下目录中也可以再放是目录,和Windows类似。

说到这里,我们可以通过指令tree .(安装命令: yum install -y tree)以树形结构显示当前目录的所有文件和目录

[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root
[root@iZ2ze79kprp9cai14dsma8Z ~]# tree .
.
├── File
│   ├── test
│   ├── test.c
│   └── test.txt
├── lesson2
│   └── 106.txt
└── Linux
    ├── 9.25test.cpp
    ├── test.cpp
    └── test.txt

4 directories, 6 files

语法:cd 目录名
功能:改变工作目录。将当前工作目录改变到指定的目录下。
举例

cd .. : 返回上级目录
cd /home/litao/linux/ : 绝对路径
cd ../day02/ : 相对路径
cd ~:进入用户家目
cd -:返回最近访问目录

简单来说就是cd功能就是在cd后面空格加上你想去的路径。

cd…回退上级路径(如果一直回退,最终会无法回退,只会到根目录/)

[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root
[root@iZ2ze79kprp9cai14dsma8Z ~]# cd ..
//返回到上级目录
[root@iZ2ze79kprp9cai14dsma8Z /]# pwd
/
[root@iZ2ze79kprp9cai14dsma8Z /]# cd ..
[root@iZ2ze79kprp9cai14dsma8Z /]# pwd
/

cd ~:进入当前用户的工作目录,即默认登陆所处的目录
root用户:

[root@iZ2ze79kprp9cai14dsma8Z /]# cd ~
[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root

普通用户:

[lj@iZ2ze79kprp9cai14dsma8Z home]$ pwd
/home
[lj@iZ2ze79kprp9cai14dsma8Z home]$ cd ~
[lj@iZ2ze79kprp9cai14dsma8Z ~]$ pwd
/home/lj

cd -:进入最近一次所处的路径,从两个热点路径下来回切换!

[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root
[root@iZ2ze79kprp9cai14dsma8Z ~]# cd ./lesson2
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# cd -
/root
[root@iZ2ze79kprp9cai14dsma8Z ~]# cd -
/root/lesson2
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# cd -
/root

我们先进入一个目录,然后进行cd -,就会返回到最近的访问目录,然后在cd -,就又会返回到刚刚进入的目录。

5.touch指令

touch是一个Linux下创建的普通文件的命令

[root@iZ2ze79kprp9cai14dsma8Z lesson2]# pwd
/root/lesson2
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# tree .
.
└── 106.txt

0 directories, 1 file
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# touch test.c
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# tree .
.
├── 106.txt
└── test.c

0 directories, 2 files

语法:touch [选项]… 文件…
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
常用选项

-a 或--time=atime或--time=access或--time=use只更改存取时间。
-c 或--no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
-m 或--time=mtime或--time=modify 只更改变动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间

除此之外,我们还可以去查看文件时间

[root@iZ2ze79kprp9cai14dsma8Z lesson2]# stat 106.txt
  File: ‘106.txt’
  Size: 228914    	Blocks: 448        IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 1055555     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-09-25 13:49:44.911818192 +0800
Modify: 2022-09-25 13:49:37.844065011 +0800
Change: 2022-09-25 13:49:37.844065011 +0800
 Birth: -

查看时间之外我们可以利用touch去更新时间:

[root@iZ2ze79kprp9cai14dsma8Z lesson2]# stat 106.txt
  File: ‘106.txt’
  Size: 228914    	Blocks: 448        IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 1055555     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-09-25 13:49:44.911818192 +0800
Modify: 2022-09-25 13:49:37.844065011 +0800
Change: 2022-09-25 13:49:37.844065011 +0800
 Birth: -
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# touch 106.txt
[root@iZ2ze79kprp9cai14dsma8Z lesson2]# stat 106.txt
  File: ‘106.txt’
  Size: 228914    	Blocks: 448        IO Block: 4096   regular file
Device: fd01h/64769d	Inode: 1055555     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2022-09-27 13:04:10.987805507 +0800
Modify: 2022-09-27 13:04:10.987805507 +0800
Change: 2022-09-27 13:04:10.987805507 +0800
 Birth: -

6.mkdir指令(重要)

在当前目录下下创建一个新目录

[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root
[root@iZ2ze79kprp9cai14dsma8Z ~]# ls
File  lesson2  Linux
[root@iZ2ze79kprp9cai14dsma8Z ~]# mkdir lesson3
[root@iZ2ze79kprp9cai14dsma8Z ~]# ls
File  lesson2  lesson3  Linux
[root@iZ2ze79kprp9cai14dsma8Z ~]# pwd
/root

语法: mkdir [选项] dirname…
功能:在当前目录下创建一个名为 “dirname”的目录
常用选项

-p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;

即mkdir -p命令可以创建路径

[root@iZ2ze79kprp9cai14dsma8Z ~]# ls
File  lesson2  lesson3  Linux
[root@iZ2ze79kprp9cai14dsma8Z ~]# mkdir -p dir/LJ/test.c
[root@iZ2ze79kprp9cai14dsma8Z ~]# ls
dir  File  lesson2  lesson3  Linux

当然-p可以递归创建多个目录

7.写在最后

那么Linux的基本指令(一)到这里就结束了。
在这里插入图片描述

  • 47
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 43
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 43
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沐曦希

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值