【Linux】指令详解(二)

目录

  • [1. 前言](#1. 前言)
  • [2. 重新认识指令](#2. 重新认识指令)
    • [2.1 指令的本质](#2.1 指令的本质)
      • [2.1.1 `which`](#2.1.1 which)
      • [2.1.2 `alias`](#2.1.2 alias)
  • [3. 常见指令](#3. 常见指令)
    • [3.1 `whoami`](#3.1 whoami)
    • [3.2 `cd`](#3.2 cd)
      • [3.2.1 `cd -`](#3.2.1 cd -)
      • [3.2.2 `cd ~`](#3.2.2 cd ~)
    • [3.3 `touch`](#3.3 touch)
      • [3.3.1 文件创建时间](#3.3.1 文件创建时间)
    • [3.4 `stat`](#3.4 stat)
    • [3.5 `mkdir`](#3.5 mkdir)
      • [3.5.1 创建一个目录](#3.5.1 创建一个目录)
      • [3.5.2 创建路径](#3.5.2 创建路径)
    • [3.6 `tree`](#3.6 tree)
    • [3.7 `rm`](#3.7 rm)
      • [3.7.1 `rm -f`](#3.7.1 rm -f)
      • [3.7.2 `rm -r`](#3.7.2 rm -r)
    • [3.8 `man`](#3.8 man)
    • [3.9 `cp`](#3.9 cp)
    • [3.10 `mv`](#3.10 mv)

1. 前言

继上一篇对Linux的一些指令做了一些初步介绍后,今天来继续分享其它有关的指令。

首先还是得先打开xshell,连接上的云服务器。

话不多说,正片开始。

2. 重新认识指令

2.1 指令的本质

指令的本质都是程序。

指令、程序、可执行程序都是一回事。

怎么会说一个指令就是一个程序呢?

2.1.1 which

which要求系统打印出我所定制的指令名称,在系统的所在路径。

我们可以看见ls是在这个/usr/bin/ls路径下,

执行ls和/usr/bin/ls显示的信息是一样的。

2.1.2 alias

我们会发现有的指令which后会有alias。
alias也是Linux的一个命令,给其它命令起一个别名

直接来个例子:把ls -a -l改名为zhangsan。

我们发现zhangsan的作用和ls -a -l的作用是一样的。

不建议起别名,可能会忘记自己起别名的是那个指令。

3. 常见指令

3.1 whoami


whoami表示我们在什么路径下的我们。

其实whoami拆开就是who am i,在表述的时候,经常说我们处在什么路径下的,我们指的就是whoami

3.2 cd

3.2.1 cd -

cd -:跳转到我们最近一次所在的路径下。

刚开始在100这个目录下,我们切换到根目录,当我们记不清楚上一次到哪个路径下,

使用cd -,它能更方便在两个路径之间来回切换。

3.2.2 cd ~

cd ~:进入用户家目录。

这里/root就是root用户自己的家目录。

那怎么知道我们是什么用户呢?

就用到上面所提到的whoami

在windows中的用户默认的家目录。

而Linux下指定的用户也有自己的家目录。

对于root账号:默认的家目录就是/root,也就是超级管理员账号。

对于普通用户:默认家目录/home/xxx,xxx就是新建的用户名。

对于任何一个用户,首次登陆所处的路径都是自己的家目录。

3.3 touch

touch可以创建一个普通文件。

使用touch创建了一个t.txt的文件。
它只能创建一个普通文件

3.3.1 文件创建时间

红色部分就是最后修改的时间。

修改了一下文件,文件时间就会改变。

3.4 stat

stat 用来查看文件更详细的属性信息。

这里出现了三个时间,简称为一个文件的ACM时间?

什么意思呢?

之后的文章中会回答。

3.5 mkdir

3.5.1 创建一个目录

mkdir创建一个目录。

默认创建的是一个空目录。

怎么看呢?

它里面什么都没有。

3.5.2 创建路径

那我们想要创建文件夹套文件夹呢?

显然不行。

使用mkdir -p

有没有直接将这些目录显示出来?

那当然有。

3.6 tree

我们直接使用tree a

但是并没有找到。

这是因为系统没有指令。

我们先使用下面的代码,装上这个指令

c 复制代码
yum install -y tree

这时就以树状形式出现了。

3.7 rm

rm删除一个目录。

这里a不是空目录。
rm只能删除空目录。

rm删除普通文件,此时就会出现是否要不要删除,输入y就删除,n就表示不删除。

每次都得输入,觉得太麻烦了有没有强制删除呢?

3.7.1 rm -f

rm -f强制删除

此时就没有再提示了。

3.7.2 rm -r

当我们删除目录时,即使是空目录也显示不了,但加了-r就可以。

不想要提示,强制删除,那就rm -rf dir,在r这里加上了f。

总的就是:

要注意的是rm删除,就是删除。

一旦有不确定的目录或者是文件,宁可备份,不可删除。

3.8 man

Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。
man 语法: man [选项] 命令

举个例子:

在系统中man手册有多个,

  1. 主要是可执行程序
    (2. 以后的文章中会有)
  2. c语言库函数所对应的情况
    其它的不用管

    不指定对应的手册,默认从上往下,只要找到了就不往下找。

3.9 cp

cp拷贝

Linux中同一个目录下,不允许存在同名文件。

src dst都可以携带绝对路径或者相对路径进行拷贝。

举个例子:把t.txt拷贝到上级目录下

3.10 mv

mv有三个作用:

  1. 在指定的目录下,对一个文件或者目录进行重命名。

    举个例子:将t.txt改名为x.txt

  2. 将指定目录下的文件或者目录,剪切到指定目录下

    举个例子:将x.txt剪切到100_dir目录下

  3. 不仅仅剪切,在剪切的同时,顺便重命名。

    举个例子:将 100_dir目录下的x.txt拷贝到上级目录并重新命名为o.txt。

有问题请指出,大家一起进步吧!

相关推荐
向宇it24 分钟前
【从零开始入门unity游戏开发之——C#篇26】C#面向对象动态多态——接口(Interface)、接口里氏替换原则、密封方法(`sealed` )
java·开发语言·unity·c#·游戏引擎·里氏替换原则
@菜鸟进阶记@27 分钟前
java根据Word模板实现动态填充导出
java·开发语言
卖芒果的潇洒农民29 分钟前
Lecture 6 Isolation & System Call Entry
java·开发语言
AAA.建材批发刘哥30 分钟前
Linux快速入门-Linux文件系统管理
linux·运维·服务器·c语言·学习方法
SomeB1oody1 小时前
【Rust自学】6.1. 定义枚举
开发语言·后端·rust
SomeB1oody1 小时前
【Rust自学】5.3. struct的方法(Method)
开发语言·后端·rust
LKAI.1 小时前
搭建Elastic search群集
linux·运维·elasticsearch·搜索引擎
Kisorge2 小时前
【C语言】指针数组、数组指针、函数指针、指针函数、函数指针数组、回调函数
c语言·开发语言
正在走向自律2 小时前
阿里云ESC服务器一次性全部迁移到另一个ESC
服务器·阿里云·云计算
gywl3 小时前
openEuler VM虚拟机操作(期末考试)
linux·服务器·网络·windows·http·centos