【Linux系统】—— 基本指令(二)

【Linux系统】—— 基本指令(二)

  • 1 「alias」命令
    • 1.1 「ll」命令
    • 1.2 「alias」命令
  • 2 「rmdir」指令与「rm」指令
    • 2.1 「rmdir」
    • 2.2 「rm」
      • 2.2.1 「rm」 删除普通文件
      • 2.2.2 「rm」 删除目录
      • 2.2.3 『 * 』 通配符
  • 3 「man」 指令
  • 4 「cp」 指令
    • 4.1 拷贝普通文件
    • 4.2 拷贝目录
  • 5 「mv」 指令
    • 5.1 普通文件
    • 5.2 目录
  • 6 nano 编辑器
  • 7 echo
  • 8 「cat」 指令
    • 8.1 初识 「cat」
    • 8.2 命令行选项
    • 8.3 「tac」命令
  • 9 时间相关指令
    • 9.1 显示时间
    • 9.2 时间戳
    • 9.3 「cal」 指令

1 「alias」命令

1.1 「ll」命令

  在讲 「alias」命令之前,我们先来看下 「ll」命令
  我们来看下「ll」命令有什么效果

在这里插入图片描述

  我们发现「ll」命令也是显示当前目录的各个文件,它的效果与 「ls -l -a」相同

在这里插入图片描述

  

1.2 「alias」命令

  在 Linux 中,「alias」 指令用于创建一个命令的别名,即给变量取别名。这样我们就可以用一个简短的字符串来代替一个较长或复杂的命令。
  
  比如现在我们给「 ls」命令取别名 m o n k e y monkey monkey

在这里插入图片描述

  
  再比如给「ls -l -a」起别名

在这里插入图片描述

  :alias 后的 ‘=’ 左右两边不能加空格
  
  实际上,「 ll 」就是「 ls -l -a」,「 ll 」本质alias ll='ls -l -a --color=auto'
  
   --color=auto 是什么呢?
   实际上,我们直接通过路径执行「ls」指令,文件名是没有颜色

在这里插入图片描述

   只有加上 --color=auto 才会显示颜色

在这里插入图片描述

  
  那为什么我们直接输入「ls」,又有颜色呢?
  那是因为这里的 「ls」也是一个别名。本质:alias ls='ls --color=auto'

  那如果我们起了别名有不想要了呢?
  不用担心,我们所起的别名是临时的,当我们重新登录时,起的别名就失效了
  
  

2 「rmdir」指令与「rm」指令

2.1 「rmdir」

  「rmdir」是一个与「mkdir」相对的指令,「mkdir」是创建目录,「rmdir」是用来删除删除目录的

  • 语法:「rmdir」 [dirName]
  • 功能:删除空目录
  • 使用对象:具有当前目录操作权限的所有使用者

在这里插入图片描述

  但是「rmdir」默认只能删除空目录,非空目录和普通文件它是不能删除的

在这里插入图片描述

  

2.2 「rm」

  「rmdir」使用起来有诸多限制,因此我们了解即可,平常我们更多的是用 「rm」 命令
  「rm」 命令可删除文件或者目录

  • 语法:「rm」 [dirName/dir]
  • 功能:删除文件或目录
  • 使用对象: 所有使用者

  

2.2.1 「rm」 删除普通文件

在这里插入图片描述

  

2.2.2 「rm」 删除目录

  我们创建一个空目录888,并用 「rm」 删除试试看

在这里插入图片描述

  不是说rm啥都能删吗,怎么连一个空目录都删不了呢?

  这是因为「rm」默认只能删普通文件,就跟「rmdir」一样默认只能删空目录。
  但是「rm」的选项更丰富
  如果想要删目录,需要加上 「-r」命令行选项

在这里插入图片描述

  
  目录本身的定义是多叉树当中的节点,在多叉树中做各种操作都是递归式进行定义的,所以「-r」就代表着递归(recursion)的意思。不管这个目录是否为空都能删除

在这里插入图片描述

  :删除的时候一定要仔细,不要一不小心把根目录给删了!
  

2.2.3 『 * 』 通配符

  在 Linux 中有一个 『 * 』 符号,这个 『 * 』 叫做通配符
  所谓通配符就是可以去匹配任意的内容

在这里插入图片描述

  比如:『ls *.txt』 表示显示所有后缀为 .txt 的文件;『test. *』 『*.*』也是同理

  这样我们就可以利用通配符,将某一类型文件一次性删除啦

在这里插入图片描述

  
  :如果直接『rm -r *』 的话,会直接将当前所在目录的所有内容删掉。这点一定要小心使用,确定自己在哪个目录下,不要一不小心把根目录所以内容删了

在这里插入图片描述

  :Linux 并没有所谓的回收站,删了就是删了。所以删除要谨慎

  
  

3 「man」 指令

  Linux 当中的命令有很多参数,我们不可能全部记住。我们可以通过查看 Linux 手册获取帮助。访问 Linux 手册的命令是「man」

  • 语法:「man」 [选项] 命令

  
  比如「pwd」指令我不会用,可查阅「man」手册

在这里插入图片描述

  直接输入『man pwd』就能跳转到对应的手册位置(按 Q 退出手册

在这里插入图片描述

  
  既然是一个手册,它就有第一章、第二章……
  我们输入『man man』可以看到该手册一共有九章

在这里插入图片描述

  我们默认都是在第一章去查找
  

我们学习 Linux 大部分只会用到前三章手册:

  • 第一章:普通的命令
  • 第二章:系统调用
  • 第三章:C语言库函数

  
  命令中有 printf 命令,同样 C语言 也有 printf函数
  两个 p r i n t f printf printf 并没有任何关系

printf 命令 使用:
  在这里插入图片描述

  
  「man」手册的查找原则是:从前往后寻找,找到了就返回
  像查找 「printf」命令可以:man printf
  也可以指定章节去查找:「man 1 printf」
  
  而如果想查找 C语言 中的 printf函数,则必须要指定章节去查找才能找到,不然 「printf」命令在前,系统搜索到「printf」命令是直接返回的
  指定章节查找:「man 3 printf」

  注:部分系统可能没安装「man」手册,ubunto可以输入命令 apt install -y man-pages 下载,centos可以输入命令 yum install -y man-pages 下载
  
  

4 「cp」 指令

  • 语法:「cp」 [选项] 源文件或目录 目标文件或目录
  • 功能:拷贝文件或目录

  

4.1 拷贝普通文件

  • 「cp」 源文件 目标文件

  在当前目录下拷贝生成目标文件,拷贝出的文件名为目标文件名
  在这里插入图片描述

  

  • 「cp」 源文件 目标目录

  如果后面跟的是目录,将会将源文件拷贝至目标目录下,拷贝出的文件名为源文件名,即与源文件名相同
  在这里插入图片描述

  同一个目录下不能有同名文件,但是不同目录可以
  

  不过当然,也可以指定文件名
  在这里插入图片描述

  

「cp」 拷贝普通文件

  • 「cp」 srcfile dstfile
  • 「cp」 srcfile dstdir/
  • 「cp」 srcfile dstdir/dstfile

  

4.2 拷贝目录

  那拷贝目录又是怎么拷贝的呢?

比如像拷贝 lesson1 目录。在这里插入图片描述

在这里插入图片描述

  发现直接拷贝目录是拷贝不了的
  
  因为目录是递归式定义的内容,所以这里需要带 「-r」命令行选项

在这里插入图片描述

  上述情况,目标目录是不存在的目录,是拷贝在当前目录下

  我们将 lesson1 中的内容再拷贝一次给 lesson2 ,此时的 lesson2 是已经存在的目录,这时拷贝会发生什么呢

在这里插入图片描述

  发现新拷贝出的目录名还是 lesson1,但是拷贝出来的目录是在 lesson2 目录下

  所以结论是当进行拷贝目录时:如果目标目录不存在,则在当前目录下拷贝;如果目标目录已经存在,会将目录拷贝到目标目录的内部

  那如果再将 lesson1 拷贝到 lesson2 里面呢?此时新拷贝的 lesson1 会将原来的 lesson1 覆盖
  
  

5 「mv」 指令

  「mv」 指令是 move 的缩写,可以用来移动文件或者将文件改名(move(rename)files),是 Linux 系统下常用的命令,经常用来备份文件后或者目录

  • 语法:「mv」 [选项] 源文件或目录 目标文件或目录
  • 功能:
    1. 在指定目录下,对一个文件或目录进行重命名
    2. 将指定目录下的目标或文件,剪切到指定目录下
    3. 不仅仅可以剪切,还可以在剪切时进行重命名

5.1 普通文件

  • 剪切功能

    • 当「mv」 src dst 中的 src 是普通文件时,就是对普通文件进行操作

  将 hello.txt 文件剪切动 lesson1 目录下

语法:「mv」 srcfile dstdir
  
在这里插入图片描述

  

  • 重命名功能

  将 test.txt 重命名为 1.txt
  
在这里插入图片描述

  那如何判断「mv」是剪切还是重命名呢?
  取决于「mv」 src dst 中的 dst,如果 dst 是目录并且不存在,那他就是重命名;如果是目录且存在就是剪切
  

5.2 目录

  当「mv」 src dst 中的 src 是目录时,就是对目录进行操作

  • 剪切功能

「mv」 srcdir dstdir

  
  我们将 a 目录从当前目录剪切到 lesson1 目录下

在这里插入图片描述

  其实剪切文件和剪切目录不用再可以去区分,因为 Linux 下一切皆文件
  

  • 重命名功能

  那目录可以重命名吗?
  与文件一样的道理
  当 「mv」 src dst 中的 dst 是一个已经存在的目录时,为剪切功能;是一个不存在的目录时,为重命名功能

  我们将 a 目录重命名成 222

在这里插入图片描述

  
  

6 nano 编辑器

  「nano」 是 Linux 操作系统中一款简单易用的文本编辑器,它提供了一个用户友好的界面和一系列快捷键,使用户能够轻松地进行文本编辑和修改。

  • 语法:nano 文件名(文件不存在则新建文件)
  • 功能:给用户提供文本编辑页面

  
使用方法:

在这里插入图片描述

  在这里插入图片描述
  
  
退出方法:
  

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  :有部分小伙伴没有安装 nano,centos 可以输入yum install -y nano(centos),ubunto 可以输入 apt install -y nano(ubunto)来安装 nano
  
  

7 echo

  「echo」 指令非常简单,我们这里简单提一下

  • 语法:echo [选项] [字符串]
  • 功能:将后续内容以字符串的形式打印出来

  
使用方式:

在这里插入图片描述

  :这里来我们建议将要打印的内容用单引号括起来,如果用双引用可能有时会出问题。
  
  当然,前面我们讲过的「printf」命令也是可以打印的

在这里插入图片描述

  所以我们如果想单纯的在显示器中回显一个字符串可以用「echo」也可以用「printf」
  
  

8 「cat」 指令

8.1 初识 「cat」

  • 语法:cat [选项][文件名]
  • 功能:显示指定文件名里面的内容

  
  例如:我们用「cat」将刚刚写入 hello.txt文件 中的内容打印出来

在这里插入图片描述

  
  那「echo」可以打印文件中能内容吗?

在这里插入图片描述

  不行
  可以看到「echo」将 hello.txt 当做字符串打印出来了
  所以如果要打印文件中的内容,还是要用「cat」命令

  需要注意的是:「cat」命令比较适合看短文件
  

8.2 命令行选项

  「cat」指令的命令行选项如下:

  • 「-b」:对非空输出行编号
  • 「-n」:对输出的所有行编号
  • 「-s」:不输出多行空行

  
  其中,最常用的就是 「-n 」选项。「-n 」可以帮我们把行号加上

在这里插入图片描述

  

8.3 「tac」命令

  「cat」命令有一个伙伴指令:「tac」命令
  「tac」命令也是显示文件内容,只不过他是 反向显示文件内容

在这里插入图片描述

  但是反向打印有什么用呢?

  当我们想看一个大型文件最开始的信息,如果用「cat」打印,那么最前面的信息都被刷屏刷掉了,这时我们就可以用「tac」进行反向打印,就能看到最前面的信息
  
  

9 时间相关指令

9.1 显示时间

  • 语法:「date」 选项 格式
  • 功能:用于显示时间、设置时间、完成时间与时间戳之间的相互转换等。

  
  Linux中,我们可以直接通过 「date」指令查看当前时间

在这里插入图片描述

  但是这样的显式格式看起来不太好,它是系统的默认时间格式
  如果我们想要修改格式,我们可以增加选项
  
  下面是「date」常用选项:

  • 「%H」:小时(00…23)
  • 「%M」:分钟(00…59)
  • 「%S」:秒(00…61)
  • 「%X」:相当于%H%M%S
  • 「%d」:如(01…31)
  • 「%m」:月份(01…12)
  • 「%Y」:完整年份(0000…9999)
  • 「%F」:相当于%Y-%m-%d

  
如:

在这里插入图片描述

  :「+」是固定的语法格式,但是选项之间的「-」和「_」是分隔符可以根据需要自己修改
  
  为什么我们可以查到时间呢?因为时间对于计算机来说是非常重要的,系统本身就要帮我们记录时间
  
  这里问一个小问题:
  计算机关机后,再次开机为什么还能准确的显示时间呢 ?
  大家有没有想过,电脑关机后都断电了,没有电源,为什么还能记录准确时间呢?

  其实不管是笔记本电脑还是台式机,在其主板上都会有一个纽扣电池,这个纽扣电池就可以让系统主板一直给我们记录时间。
  所以当电脑关个一年半载,再次开机时间就不对了,因为纽扣电池早就没电了,主板也就不能记录时间,

在这里插入图片描述

  
  

9.2 时间戳

  我们往系统中输入:『date +%s』 看看会发生什么

在这里插入图片描述

  
  这一串数字式什么呢?不懂,别急我们多输入几次,看看有什么发现

在这里插入图片描述

  我们发现,随着我们的不断查看,这串数字在不断增加

  这个东西是什么呢?
  这里就要引入一个新的概念:时间戳

  上述显示出的17279…一串的数字是格林威治时间戳

  Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)是从 1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒

  我们所有的计算机记录时间,并不是按年月日来记录的,因为维护一个字符串太复杂了。计算机内部会维持一个线性递增的计数器,每过一秒(其实是微妙)让这个计数器++ ,而计数的时间是从1970年1月1日的午夜开始。我们把1970年1月1日的午夜到现在所经过的秒数称为时间戳
  而英国的格林威治是世界时间的约定点,因此也叫格林威治时间戳
  
  时间戳有什么用呢?

  • 转化为年月日的时间
  • 日志中记录的时间是时间戳。
  • 区间查找,锁定一个时间范围

  
  那时间戳怎么转换成对应的标准时间呢?如下

在这里插入图片描述

  
  那我们是不是可以查看时间戳为 0 的时间呢?

在这里插入图片描述

  因为北京在东八区,与格林威治有 8 小时的时间差,所以这里显示的是 1970年1月1日早上8点
  

9.3 「cal」 指令

  「cal」命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。 “阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又名“西历”。

  • 语法:cal [选项] [月份] [年份]
  • 功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1~9999),如有两个参数,则表示月份和年份。

在这里插入图片描述

  
选项:

  • 「-3」: 显示系统前一个月,当前月,下一个月的月历。
  • 「-j」 :显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)。
  • 「-y」: 显示当前年份的日历。

  
  
  
  


  好啦,本期关于基本指令的知识就介绍到这里啦,希望本期博客能对你有所帮助。同时,如果有错误的地方请多多指正,让我们在 Linux 的学习路上一起进步!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/885354.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Pytorch cuda版本选择(高效简洁版)

简而言之 Pytorch cuda版本选择 只需要低于cuda驱动版本即可,cuda驱动版本查看命令是nvidia-smi, nvcc -V 是runtimeapi版本可以不用管 1.只要看cuda驱动版本 安装pytorch 选择cuda版本,只要看你电脑cuda驱动版本即可。 2.选择依据 pytorch中cuda版本只…

Flink API 的层次结构

Apache Flink 提供了多层 API,每层 API 针对不同的抽象层次和用途,使得开发者可以根据具体需求选择合适的 API 层次。以下是 Flink API 的层次结构及其简要说明:

GPU集群上分布式训练大模型

总结一下如何在超算系统上进行预训练大模型的分布式训练 / 微调,文中代码已上传至 github 实验环境 集群1:国家广州超算 星逸A800智能AI集群 GPU:8 * Nvdia Tesla-A800 80G显存 CPU:2 * 28核 Intel Xeon Gold 6348 内存&#xff…

python爬虫自动库DrissionPage保存网页快照mhtml/pdf/全局截图/打印机另存pdf

目录 零一、保存网页快照的三种方法二、利用打印机保存pdf的方法 零 最近星球有人问如何使用页面打印功能,另存为pdf 一、保存网页快照的三种方法 解决方案已经放在星球内:https://articles.zsxq.com/id_55mr53xahr9a.html当然也可以看如下代码&…

Redis 中 Bitmap 原理和应用

Bitmap Redis中的Bitmap(位图)是一种较为特殊数据类型,它以最小单位bit来存储数据,我们知道一个字节由 8个 bit 组成,和传统数据结构用字节存储相比,这使得它在处理大量二值状态(true、false 或…

elementUI 点击弹出时间 date-picker

elementUI的日期组件,有完整的UI样式及弹窗,但是我的页面不要它的UI样式,点击的时候却要弹出类似的日期选择器,那怎么办呢? 以下是elementUI自带的UI风格,一定要一个输入框来触发。 这是我的项目中要用到的…

微软日志丢失事件敲响安全警钟

NEWS | 事件回顾 最近,全球最大的软件公司之一——微软,遭遇了一场罕见的日志丢失危机。据报告,从9月2日至9月19日,持续长达两周的时间里,微软的多项核心云服务,包括身份验证平台Microsoft Entra、安全信息…

2021-04-22 51单片机玩转点阵

理论就不赘述了,网络上多得很,直接从仿真软件感性上操作认识点阵,首先打开ISIS仿真软件,放置一个点阵和电源与地线就可以开始了;由点阵任何一脚连线到地线,另一边对应的引脚就连接到电源,如图:点击运行看是否点亮?看到蓝色与红色的点表示电源正常但是没有任何亮点,这时对调一下…

(十三)JavaWeb后端开发——MySQL2

目录 1.DQL数据查询语言 1.1基本查询 1.2条件查询 where关键字 1.3分组查询 1.4排序查询 1.5分页查询 2.多表设计 3.多表查询——联查 4.多表查询——子查询​ 5.MySQL 事务 6.事务管理(事务进阶) 7.MySQL 索引 1.DQL数据查询语言 分为五大…

恭喜!2024年度大连市科技人才创新、科技人才创业项目拟立项公示!

精选SCI/SSCI/EI SCI&EI ●IEEE 1区TOP 计算机类(含CCF); ●EI快刊:最快1周录用! 知网(CNKI)、谷歌学术期刊 ●7天录用-检索(100%录用),1周上线; 免费稿件评估 …

【前端】-音乐播放器(源代码和结构讲解,大家可以将自己喜欢的歌曲添加到数据当中,js实现页面动态显示音乐)

前言:音乐播放器是前端开发中的一个经典项目,通过它可以掌握很多核心技术,如音频处理、DOM操作、事件监听、动画效果等。这个项目不仅能提升前端开发的技能,还能让开发者深入理解JavaScript与HTML的协同作用。 页面展示&#xff1…

虚拟机linux7.9下安装mysql

1.MySQL官网下载安装包: MySQL :: Download MySQL Community Server https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz 2.解压文件: #tar xvzf mysql-5.7.39-linux-glibc2.12-x86_64.tar.gz 3.移动文件&#…

03_CC2530基于定时器3的Delay_ms函数

CC2530定时器3与Delay_ms延时函数 前言 ​ Delay函数是开发中常用到的函数,可以用于按键消抖,LED闪烁,生成一定频率信号等(软件模拟通讯协议)。由于利用循环执行一定次数的空指令实现的延时函数在精度上并不能让人满意,而用定时…

【系统面试篇】其他相关题目——虚拟内存、局部性原理、分页、分块、页面置换算法

目录 一、相关问题 1. 什么是虚拟内存?为什么需要虚拟内存? (1)内存扩展 (2)内存隔离 (3)物理内存管理 (4)页面交换 (5)内存映…

43.第二阶段x86游戏实战2-提取游戏里面的lua

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 本次游戏没法给 内容参考于:微尘网络安全 本人写的内容纯属胡编乱造,全都是合成造假,仅仅只是为了娱乐,请不要…

容器内pip安装Apache Airflow的经历:如何重置初始密码

背景 Apache Airflow™https://github.com/apache/airflow 是一个开源平台,用于开发、调度和监控面向批处理的工作流程。Airflow 可扩展的 Python 框架使您能够构建几乎可以连接任何技术的工作流程。Web 界面有助于管理工作流程的状态。Airflow 可以通过多种方式部…

Java爬虫 爬取某招聘网站招聘信息

Java爬虫 爬取某招聘网站招聘信息 一、系统介绍二、功能展示1.需求爬取的网站内容2.实现流程2.1数据采集2.2页面解析2.3数据存储 三、其它1.其他系统实现 一、系统介绍 系统主要功能:本项目爬取的XX招聘网站 二、功能展示 1.需求爬取的网站内容 2.实现流程 爬虫…

stm32不小心把SWD和JTAG都给关了,程序下载不进去,怎么办?

因为想用STM32F103的PA15引脚,调试程序的时候不小心把SWD和JTAD接口都给关了,先看下罪魁祸首 GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable,ENABLE);//关掉JTAG,不关SWGPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);//关掉SW&am…

雷军-2022.8小米创业思考-11-新零售:用电商思维做新零售,极致的效率+极致的体验。也有弯路,重回极致效率的轨道上。

第十一章 新零售 当我们说到小米模式的时候,其实我们说的是两件东西: 一是小米模式的本质,即高效率的商业模式; 另一件是小米这家公司具象的商业模式,这是小米在实践中摸索、建立的一整套业务模型。 从2015年到202…

C语言实现数据结构之堆

文章目录 堆一. 树概念及结构1. 树的概念2. 树的相关概念3. 树的表示4. 树在实际中的运用(表示文件系统的目录树结构) 二. 二叉树概念及结构1. 概念2. 特殊的二叉树3. 二叉树的性质4. 二叉树的存储结构 三. 二叉树的顺序结构及实现1. 二叉树的顺序结构2.…