您的位置:首页 > 游戏 > 手游 > 【Linux】Linux基本指令1

【Linux】Linux基本指令1

2024/7/4 6:17:59 来源:https://blog.csdn.net/2301_80224556/article/details/139265172  浏览:    关键词:【Linux】Linux基本指令1

目录

1.软件,OS,驱动

1.1.操作系统

1.2.驱动 

1.3.软件

2.Linux操作的特点

 3.Linux操作指令

3.1.快速学习5条指令

3.1.1.pwd指令和ls指令

3.1.2.mkdir

3.1.3.cd

3.1.4.touch

3.2.ls指令详解

3.2.1.ls -l和ls -a

3.2.1.文件=文件内容+文件属性

3.2.3.选项的写法

.和..文件

3.2.5.ls -d

​编辑 3.2.6.ls -F

 3.3.pwd和cd指令

​编辑

 3.3.1.cd

绝对路径和相对路径

3.4.touch指令

3.5.mkdir 

3.6.rmdir指令 && rm 指令(重要): 


1.软件,OS,驱动

我们看看计算机的结构层次

1.1.操作系统

操作系统是一款做 软硬件管理 的软件

操作系统(计算机管理控制程序)_百度百科 (baidu.com)

操作系统(英语:Operating System,缩写:OS)是一种内置的程序,用来协作计算机的各种硬件,以与用户进行交互。常见有Windows,macOS 和开源的 Linux。

一个好的操作系统的衡量指标:稳定,快速,安全

这些东西都是由操作系统层决定的:对下通过对下管理好软硬件资源的手段,达到对上提供良好(稳定,快速,安全)的操作/使用环境

我们来理解一下我们在计算机的所有操作

  • printf->打印
  • 文件->磁盘文件写入
  • 游戏->向网络中发送数据

我们在计算机上的所有行为都会被转换为硬件行为

我们所有的软件行为都会自顶向下贯穿我们计算机的结构

即:信息按 应用软件->操作系统->设备驱动->硬件 路径进行执行

也就是所有的软件行为都和操作系统相关 

1.2.驱动 

驱动(计算机软件术语)_百度百科 (baidu.com)

驱动全称设备驱动程序,是添加到操作系统中的特殊程序,其中包含有关硬件设备的信息。此信息能够使计算机与相应的设备进行通信。

驱动程序是硬件厂商根据操作系统编写的配置文件,可以说没有驱动程序,计算机中的硬件就无法工作。 

1.3.软件

应用软件是在操作系统之上的

软件(按照特定顺序组织的计算机数据和指令的集合)_百度百科 (baidu.com)

软件(中国大陆及香港用语,台湾称作软体,英文:software)是一系列按照特定顺序组织的计算机数据和指令的集合。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。

软件并不只是包括可以在计算机(这里的计算机是指广义的计算机)上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。

2.Linux操作的特点

Linux操作的特点:纯命令行(注:linux也有图形化界面)

因为企业里面就是命令行,所以我们只学习命令行

Windows也是命令行/图形化界面,只不过它是面对大众的,所以图形化特别有必要,而Linux专门用于企业,所以纯命令行

Windows有个对应的系统软件,叫powershell,它支持了linux命令行

我们可以在这上面输入Linux命令行

我们也可以提供win+x,再点击终端管理员也可以打开

 我们可以讨论一个问题

先有指令还是先有图形?为什么?

先有指令,所以指令更接近操作系统

键盘也比鼠标先出现

键盘字母的排序是起源打字机

 3.Linux操作指令

我们采用Linux指令和Windows界面操作的对比来学习

3.1.快速学习5条指令

3.1.1.pwd指令和ls指令

我们使用纯ls

ls

显示的是当前目录下的文件

那当前目录是什么呢?

我们可以使用指令pwd来显示当前目录

我们的当前目录可能不一样,我是root账号,你们可能是普通用户,可能是/home/xxx

上面这个操作就像下面的

我们的pwd就相当于把上面的路径复制一下,拿到搜索界面去搜

3.1.2.mkdir

我们想要在桌面建立一个文件夹,我们在windows上操作起来很简单

谁都会是吧,我就不演示了

在linux下,我们也想创建文件夹

我们需要使用

mkdir 文件名

指令和文件夹名之间要有空格(可以不是1个) 

没有空格,就会像下面一样报错 

我们怎么知道有没有成功创建呢?

我们还是使用ls指令

显然我们已经创建成功了

所以在linux操作系统下

mkdir 108_class

相当于在Windows下的

3.1.3.cd

我们创建文件夹,就是为了存为东西,我们就要进去文件夹,我们在windows可以双击进去

那linux呢?

我们可以使用cd命令

cd 文件名

 

我们怎么知道我们进去了呢?

3.1.4.touch

创建文本文件

touch 文件名

跟windows下创建一个文本文件一样

3.2.ls指令详解

它的主要作用是查看文件

语法:

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

3.2.1.ls -l和ls -a

windows上也是可以的 ,打开powershell,自己去试试看

我们创建一个文件是要占据磁盘空间的

3.2.1.文件=文件内容+文件属性

文件的属性是数据吗?显然是

文件的操作=文件内容的操作+文件属性的操作

所以问题来了

这个ls指令是显示文件属性,只不过只显示文件名属性

ls -l显示更多文件属性

我们再看一个例子

这个信息和我们windows上面的好像啊

 我们知道ls就是查文件属性的,后面的选项不就明白了吗!!

注意ls -l可以简化成ll

3.2.3.选项的写法

 下面展示了多种风格的写法,它们都是等价的

 

我们看看第一列的第一个字符 

它代表文件的类型

  • d:的表示目录
  • -:文件是一个普通文件

.和..文件

我们注意到这个ls -la比ls -l多了一个以.开头的,还有一个以..开头的

这个.开头的代表隐藏文件 ,我们可以验证一下

我们发现我们看不到这些创建的文件

我们换ls -la就能看到这些隐藏文件了 

 ls -a显示所有的文件,包括隐藏文件

windows里面也有隐藏文件,这个就不说了,自己去看

..开头的是什么呢?

我们打开我们创建的dir1文件夹

发现里面居然已经有了.和..文件了

 Linux下,任何一个目录都有两个隐藏文件,一个.,一个..

我们可以去打开这个..文件

很明显,这是回退路径

..表示当前路径的上一级路径,即这个..代表回退,和cd的作用是相反的

 下面这个是回到上一级路径的

cd ..

.表示的是当前路径

我们可以验证一下

.为什么代表当前路径呢,大家在学习路径的知识的时候,肯定看过./这个

比如./Adobe Premiere Pro 2020

3.2.5.ls -d

我们在root目录下查看108_class的属性,结果却之间给我查到了108_class里面文件的属性去了

这个时候我们就可以使用ls -dl来查看了

 3.2.6.ls -F

很简单啊 

 3.3.pwd和cd指令

pwd指令就是查看当前路径

 3.3.1.cd

cd就是打开文件/目录的功能

cd 目录名

cd..是回退

 

我们再看第二条

这些路径上的斜杠(/)是路径分隔符,在linux里用/来表示

在windows里面路径分割符(\)是反斜杠

我们发现一直回退,发现只能回退到/这里

这个/就是linux的根目录,也就是说/是一个文件

 我们查看一下,发现里面的文件我们看不懂

我们换一个指令就明白了 

我们发现这个/是一个d开头的,所以他是一个文件,所以他是根目录 

在一个目录里,一个可以再放目录或者普通文件,所以linux文件结构是多叉树的结构 

它的叶子节点一定是空目录或者非目录文件,路上节点一定是一个非目录

 所以我们所有对文件或者目录的增删查改,本质都是对这棵多叉树的增删查改

我们定位一个文件用路径来定位,路径具有唯一性,因为任何结点都只有一个父节点

我们把从/开始定位到指定位置,具有唯一性的路径,叫绝对路径

 我们便可使用cd来进入特定文件

我们再看第三条

这个..是上一级目录的意思,我们使用../就是回到了当前目录的上一级目录,../day02就代表回到当前目录的上一级目录里寻找day02的文件

我们以当前所处路径为起始参照位置,来进行特定文件的定位,这种路径叫相对路径

绝对路径和相对路径
  • 绝对路径相对较长,但是不变,一般在一些固定场景,配置文件中使用
  • 一般命令行输入,比较常用相对路径

我们可以看一下网站

https://baike.baidu.com/item/Linux/27050icon-default.png?t=N7T8https://baike.baidu.com/item/Linux/27050我们只看com后面那个/item/Linux/27050,这个分隔符就是linux风格的分隔符,这就说明这个网站是用linux操作系统制作的

 我们看一下例子

 

我们看第4条

我们退出xshell,重新登陆我们的云服务器

输入下面这个指令

我们就可以很清楚的知道默认目录就是/root,而且使用whoami可以知道我们登录的账号名是什么

用户分为两种

  • 超级用户root
  • 普通用户

centos系统里面,所有的普通用户都是放在/home目录下

我们可以使用ls /home来查看普通用户 

windows的家目录

这个对应一个普通用户的家目录

windows也可以再添加用户,这个自己去搜

windows也有超级用户root,我们以管理员身份运行就是root账号运行

我们回到cd这里来

我们直接进入了登录的家目录

我们看第五条

我们看例子

这个就是返回上次访问的目录

3.4.touch指令

作用就是创建一个普通文件

语法:

touch [选项]... 文件...

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

常用选项: 

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

我们先看看

3.5.mkdir 

创建一个目录(文件夹)

语法:mkdir [选项] dirname...

功能:在当前目录下创建一个名为 “dirname”的目录

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

我们往往是创建一个目录,但是这样子在创建深层次的目录时未免太复杂了些

我们先执行这个命令

这个是安装tree命令的

注意要root账号

安装完了之后我们就可以使用tree命令了

 

这样子文件就按树的结构显示出来了

我们回到正题

这就创建好了

3.6.rmdir指令 && rm 指令(重要): 

rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。

语法:rmdir [-p][dirName]

适用对象:具有当前目录操作权限的所有使用者

功能:删除空目录

常用选项:

  • -p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

很好啊

我们接着看

rmdir只能删除空目录,其他的不能删除 

这个时候,只能用rm命令

rm命令可以同时删除文件或目录

语法:rm [-f-i-r-v][dirName/dir]

适用对象:所有使用者

功能:删除文件或目录

常用选项:

  • -f 即使文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目录及其下所有文件

这个问我们要不要删除,我们回复y即可,n代表不想删除,普通账号可能没有这个提示

 Linux默认情况下没有回收站哦


 

我们可以把那个提示关闭

 注意一下 

目录不能删除

我们换个选项即可

 我们好烦这个提示,我们可以把这个提示给关了

rm -rf可以帮你

注意:没事不要执行下面这个语句

rm -rf /

整个操作系统都会被你删掉

 未完待续......

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com