Linux常用指令(二)

目录
一、 删除空目录(rmdir)
二、ln 硬链接与软链接
三、新建空文件或更新文件的时间戳(touch)
四、比较文件内容的差异(diff)
五、显示当前时间或设置系统时间(date)
六、显示日历(cal)
一、 删除空目录(rmdir)
1.命令格式:
---rmdir [选项]... 目录...
2.命令功能: 该命令从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对父目录的写权限。
3.命令参数
| 参数 | 功能 |
|---|---|
-p | 递归删除目录及其子目录,同时删除空的父目录 |
-v/--verbose | 显示详细的执行过程 |
命令案例
实例一:rmdir 不能删除非空目录
命令: rmdir doc
说明: rmdir 目录名 命令不能直接删除非空目录
实例 2:rmdir -p 当子目录被删除后使它也成为空目录的话,则顺便一并删除
命令: rmdir -p logs

二、ln 硬链接与软链接
命令描述:
ln 是 linux 中一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个 同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目 录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的 目录下用 ln 命令链接(link)它就可以,不必重复的占用磁盘空间

1.命令格式:
---ln [参数][源文件或目录][目标文件或目录]
2.命令功能: Linux 文件系统中,有所谓的链接(link),我们可以将其视为文件的别名,而链接又 可分为两种 : 硬链接(hard link)与软链接(symbolic link),硬链接的意思是一个文件可以 有多个名称(真正的别名),而软链接的方式则是产生一个特殊的文件(多了一个文件), 该文件的内容是指向另一个文件的地址(其实就是超链接)。硬链接是存在同一个文件 系统中,而软链接却可以跨越不同的文件系统
使用实例:
实例 1:给文件创建软链接
Cal 是输出日历,> 符号是重定向,就是把 cal 的输出重新给个输出地方,这 里重定向到了文件 2023.log 中,所以可以看到该文件内容是日历,如下截图

查看软连接和文件内容

实例 2:给文件创建硬链接
命令: ln 2023.log hardlink2023.log

实例 3:接上面两实例,链接完毕后,删除和重建链接原文件

说明: 1.源文件被删除后,并没有影响硬链接文件 2.重建源文件后,找到了链接文件系统;重建后,硬链接文件并没有受到源文件影 响,硬链接文件的内容还是保留了删除前源文件的内容,说明硬链接已经失效
实例 4:将文件链接为另一个目录中的相同名字

说明: 在 test 目录中创建了 2023.log 的硬链接,修改 test 目录中的 2023.log 文件,同 时也会同步到源文件
一个文件可以有多个名字,一个目录能不能?
说明
1.目录只能创建软链接
2.目录创建链接必须用绝对路径,相对路径创建会不成功,会提示:符号连接的层 数过多 这样的错误
3.在链接目标目录中修改文件都会在源文件目录中同步变化 。
三、新建空文件或更新文件的时间戳(touch)
1.命令格式:
---touch [选项]... 文件...
2.命令参数:
| 参数 | 功能 |
|---|---|
-a/--time=atime/--time=access/--time=use | 只更改文件的访问时间 |
-c/--no-create | 不创建任何文件 |
-d | 使用指定的日期时间,而非当前时间 |
-f | 解决BSD版本兼容性问题,忽略不处理 |
-m/--time=mtime/--time=modify | 只更改文件的修改时间 |
-r | 以参考文件的日期时间来更新指定文件的日期时间 |
-t | 使用指定的日期时间,而不是当前时间 |
3.命令功能: touch 命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。
4.使用范例:
实例一:创建不存在的文件
命令: touch log2012.log log2013.log

实例二:更新 log.log 的时间和 log2012.log 时间戳相同
命令: touch -r log.log log2012.log

实例三:设定文件的时间戳
命令: touch -t 201214112234.50 log.log

说明: -t time 使用指定的时间值 time 作为指定文件相应时间戳记的新值. 此处的 time 规定为如下形式的十进制数: [[CC]YY]MMDDhhmm[.SS] 这里,CC 为年数中的前两位,即”世纪数”;
YY 为年数的后两位,即某 世纪中的年数.如果不给出 CC 的值,则 touch 将把年数 CCYY 限定在 1969--2068 之内.
MM 为月数,
DD 为天将把年数 CCYY 限定在 1969--2068 之内.MM 为月数,
DD 为天数,hh 为小时数(几点),mm 为分钟数,
SS 为秒数.此处秒的设 定范围是 0--61,这样可以处理闰秒.这些数字组成的时间是环境变量 TZ 指定的 时区中的一个时 间.由于系统的限制,早于 1970 年 1 月 1 日的时间是错误的。
四、比较文件内容的差异(diff)
命令描述:
diff 命令是 linux 上非常重要的工具,用于比较文件的内容,特别是比较两个版本 不同的文件以找到改动的地方。diff 在命令行中打印每一个行的改动。最新版本的 diff 还 支持二进制文件。diff程序的输出被称为补丁 (patch),因为Linux系统中还有一个patch 程序,可以根据 diff 的输出将 a.c 的文件内容更新为 b.c。diff 是 svn、cvs、git 等版本 控制工具不可或缺的一部分。
使用实例:
实例 1:比较两个文件

(1c1)说明:
- 第一个数字1表示在第一个文件中出现了差异的行号。
- 字母c表示这是一个更改(change)操作。
- 第二个数字1表示在第二个文件中出现了差异的行号。
实例 2:并排格式输出
命令: diff log2013.log log2014.log -y -W 50

说明: “|”表示前后 2 个文件内容有不同
“<”表示后面文件比前面文件少了 1 行内容
“>”表示后面文件比前面文件多了 1 行内容
实例 3:上下文输出格式
命令: diff log2013.log log2014.log -c

说明: 这种方式在开头两行作了比较文件的说明,这里有三中特殊字符:
“+” 比较的文件的后者比前着多一行
“-” 比较的文件的后者比前着少一行
“!” 比较的文件两者有差别的行
实例 4:统一格式输出
命令: diff log2014.log log2013.log -u

说明:
--- file1.txt: 表示下面的行来自file1.txt文件。+++ file2.txt: 表示下面的行来自file2.txt文件。@@ -1 +1 @@: 表示下面的行是修改之后的行(+开头)和修改之前的行(-开头)所在的位置信息。
-1表示修改之前的行号为1。+1表示修改之后的行号也为1。-content1: 表示修改之前的第1行内容为content1。+content2: 表示修改之后的第1行内容为content2。
实例 5:比较文件夹不同
命令: diff test3 test6
五、显示当前时间或设置系统时间(date)
描述:
在 linux 环境中,不管是编程还是其他维护,时间是必不可少的,也经常会用到时间的 运算,熟练运用 date 命令来表示自己想要表示的时间,肯定可以给自己的工作带来诸多方便。
1.命令格式:
---date [参数]... [+格式]
2.命令功能: date 可以用来显示或设定系统的日期与时间
3.使用实例:
实例 1:显示当前时间
命令: date date '+%c' date '+%D' date '+%x' date '+%T' date '+%X'

实例 2:显示日期和设定时间
命令: date --date 08:42:00

实例 3:显示月份和日数
命令: date '+%B %d'
实例 4:显示时间后跳行,再显示目前日期
命令: date '+%T%n%D'

六、显示日历(cal)
描述:
cal 命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历, 通称阳历。“阳历”又名“太阳历”,系以地球绕行太阳一周为一年,为西方各国所通用,故又 名“西历”
使用实例:
实例 1:显示当前月份日历

实例 2:显示指定月份的日历
命令: cal 9 2023

实例 3:显示 2023 年日历
命令: cal -y 2013

实例 4:显示自 1 月 1 日的天数
命令: cal -j

实例 5:星期一显示在第一列
命令: cal -m

相关文章:
Linux常用指令(二)
目录 一、 删除空目录(rmdir) 二、ln 硬链接与软链接 三、新建空文件或更新文件的时间戳(touch) 四、比较文件内容的差异(diff) 五、显示当前时间或设置系统时间(date) 六、显…...
【HUAWEI】单臂路由
目录 🥮写在前面 🥮2.1、拓扑图 🥮2.2、操作思路 🥮2.3、配置操作 🍣2.3.1、LSW4配置 🍣2.3.2、R2配置 🍣2.3.3、测试网络 🦐博客主页:大虾好吃吗的博客 &…...
安全学习_开发相关_Java第三方组件Log4jFastJSON及相关安全问题简介
文章目录 JNDI:(见图) Java-三方组件-Log4J&JNDILog4J:Log4j-组件安全复现使用Log4j Java-三方组件-FastJsonFastJson:Fastjson-组件安全复现对象转Json(带类型)Json转对象Fastjson漏洞复现(大佬文章 JNDI:(见图) …...
零代码编程:用ChatGPT批量自动下载archive.org上的音频书
http://archive.org 是一个神奇的网站,可以下载各种古旧的软件、书籍、音频、视频,还可以搜索各个网站的历史网页。 比如说,一些儿童故事音频就可以在http://archive.org下载到,可以用来做英语听力启蒙用。 举个例子,…...
力扣用队列实现栈
自己写的栈,再让其他函数去调用自己写的栈 typedef int QDataType; typedef struct QueueNode {struct QueueNode* next;//单链表QDataType data;//放数据 }QNode;typedef struct Queue {QNode* phead;//头节点QNode* ptail;//尾节点QDataType size; //统计有多少节…...
一朵华为云,如何做好百模千态?
点击关注 文丨刘雨琦、郝鑫 2005年华为提出网络时代的“All IP”,2011年提出数字化时代的“All Cloud”,2023年提出智能时代的“All Intelligence”。 截至目前,华为的战略升级经历了三个阶段。 步入智能化,需要迎接的困难依然…...
华为云云耀云服务器L实例评测 | 实例使用教学之软件安装:华为云云耀云服务器环境下安装 Docker
华为云云耀云服务器L实例评测 | 实例使用教学之软件安装:华为云云耀云服务器环境下安装 Docker 介绍华为云云耀云服务器 华为云云耀云服务器 (目前已经全新升级为 华为云云耀云服务器L实例) 华为云云耀云服务器是什么华为云云耀云…...
小程序编译器性能优化之路
作者 | 马可 导读 小程序编译器是百度开发者工具中的编译构建模块,用来将小程序代码转换成运行时代码。旧版编译器由于业务发展,存在编译慢、内存占用高的问题,我们对编译器做了一次大规模的重构,采用自研架构,做了多线…...
FFmpeg 命令:从入门到精通 | ffmpeg 命令分类查询
FFmpeg 命令:从入门到精通 | ffmpeg 命令分类查询 FFmpeg 命令:从入门到精通 | ffmpeg 命令分类查询ffmpeg -versionffmpeg -buildconfffmpeg -formatsffmpeg -muxersffmpeg -demuxersffmpeg -codecsffmpeg -decodersffmpeg -encodersffmpeg -bsfsffmpeg…...
Linux学习记录——삼십일 socket编程---TCP套接字
文章目录 TCP套接字简单通信1、服务端1、基本框架2、获取连接 2、客户端3、多进程4、多线程5、线程池6、简单的日志系统7、守护进程8、其它 TCP套接字简单通信 本篇gitee 学习完udp套接字通信后,再来看TCP套接字。 四个文件tcp_server.hpp, tcp_serve…...
【学习笔记】深度学习分布式系统
深度学习分布式系统 前言1. 数据并行:参数服务器2. 流水线并行:GPipe3. 张量并行:Megatron LM4. 切片并行:ZeRO5. 异步分布式:PATHWAYS总结参考链接 前言 最近跟着李沐老师的视频学习了深度学习分布式系统的发展。这里…...
【数据结构】树、二叉树的概念和二叉树的顺序结构及实现
目录 前言:一、树的概念及结构1.树的概念2.树的相关概念3.树的存储4.树在实际中的运用 二、二叉树概念及结构1.概念2.特殊的二叉树(1)满二叉树(2)完全二叉树 3.二叉树的性质4.二叉树的存储(1)顺序存储(2)链式存储 三、…...
rust学习-string
介绍 A UTF-8–encoded, growable string(可增长字符串). 拥有string内容的所有权 A String is made up of three components: a pointer to some bytes, a length, and a capacity. The length is the number of bytes currently stored in the buffer pub fn as_bytes(&…...
No167.精选前端面试题,享受每天的挑战和学习
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…...
【python】pycharm导入anaconda环境
参考 Pycharm导入anaconda环境的教程图解 - 知乎 (zhihu.com)...
【数据结构】逻辑结构与物理结构
🦄个人主页:修修修也 🎏所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 目录 🌳逻辑结构 1.集合结构 2.线性结构 3.树形结构 4.图形结构或网状结构 🌳物理结构 1.顺序存储结构 2.链式存储结构 结语 根据视点的不同,我…...
HTML5高级部分
目录 一、拖拽API1.1 拖拽元素1.2 监听事件1.3 dataTransfer传递数据 二、媒体API2.1 常用监听事件2.2 常用API 三、画布API3.1 canvas 标签3.2 创建canvas对象3.3 常用API 四、地理API4.1 方法 一、拖拽API 1.1 拖拽元素 页面中设置了draggable"true"的元素可以进…...
浏览器输入 URL 并回车发生了什么
本文节选自我的博客:浏览器输入 URL 并回车发生了什么 💖 作者简介:大家好,我是MilesChen,偏前端的全栈开发者。📝 CSDN主页:爱吃糖的猫🔥📣 我的博客:爱吃糖…...
asp.net core mvc 文件上传,下载,预览
//文件上传用到了IformFile接口 1.1文件上传视图 <form action"/stu/upload" method"post" enctype"multipart/form-data"><input type"file" name"img" /><input type"submit" value"上传&…...
Axios有哪些常用的方法?
Axios是一个常用的JavaScript库,用于进行HTTP请求。它提供了一组简洁而强大的方法来发送各种类型的请求,并处理响应数据。以下是Axios中一些常用的方法及其格式: GET请求: axios.get(url[, config]).then(response > {// 请求…...
OpenClaw高消耗场景优化:Qwen3-32B私有镜像成本实测
OpenClaw高消耗场景优化:Qwen3-32B私有镜像成本实测 1. 问题背景与测试动机 最近在尝试用OpenClaw自动化处理我的日常工作流时,发现一个令人头疼的问题:长链条任务的Token消耗简直像开了水龙头一样。最夸张的一次,一个简单的&qu…...
龙芯2K0300智能车开发避坑指南:从引脚复用冲突到龙邱库完美适配的全流程记录
龙芯2K0300智能车开发实战:引脚复用冲突与龙邱库适配深度解析 第一次将龙芯2K0300处理器应用于智能车开发时,我对着原理图反复确认了三次引脚分配——直到电机突然不受控地高速旋转,才意识到自己掉进了GPIO复用功能的陷阱。这不是普通的嵌入式…...
Cisco Packet Tracer新手必看:5分钟搞定路由器静态路由配置(附避坑指南)
Cisco Packet Tracer静态路由配置实战:从零到精通的完整指南 刚接触网络工程的朋友们,第一次在Cisco Packet Tracer中配置静态路由时,是不是经常遇到"网络不通"的困扰?作为网络通信的基础技能,静态路由配置看…...
卡证检测矫正模型实战教程:中文Web界面全功能图文操作指南
卡证检测矫正模型实战教程:中文Web界面全功能图文操作指南 1. 引言:为什么你需要这个工具? 想象一下,你手头有一堆身份证、护照或者驾照的照片,它们可能角度歪斜、背景杂乱,甚至有些反光。你需要从中提取…...
5G核心网UDR深度解析:从签约数据管理到策略数据存储的完整流程
5G核心网UDR深度解析:从签约数据管理到策略数据存储的完整流程 在5G核心网(5GC)架构中,统一数据仓储功能(UDR)扮演着数据中枢的角色。作为电信级网络的关键组件,UDR不仅需要处理海量用户数据的实…...
数据工程合规检查自动化:构建完整解决方案的10个关键步骤
数据工程合规检查自动化:构建完整解决方案的10个关键步骤 【免费下载链接】data-engineer-handbook Data Engineer Handbook 是一个收集数据工程师学习资料的项目。 - 提供数据工程师所需的知识、工具和资源,帮助数据工程师学习和成长。 - 特点ÿ…...
CFO/SFO/STO/CFD/IQ不平衡/IQ gain mismatch/IQ phase mismatch/干扰信号载波频率 等等蓝牙通信中干扰参数解析
载波频偏和采样频偏确实来自物理上不同的时钟源,虽然它们可能在数字通信系统中相互影响。 我们可以从三个层面来理清它们的关系: 2. 为什么容易混淆 因为在实际电路中,射频本振和采样时钟可能来自同一个参考晶振。在一些低成本或集成度高的系统中,收发信机通过锁相环(PL…...
ArcGIS字段值提取:别再手动截取了,用Python和VB脚本5分钟搞定
ArcGIS字段值提取:Python与VB脚本高效自动化方案 引言:告别低效手工操作 在GIS数据处理工作中,属性表字段值的提取是再常见不过的操作。想象一下这样的场景:你手头有一份包含数万条记录的行政区划数据,需要从"BSM…...
YOLOv8自定义检测头踩坑记:手把手教你修复‘NotImplementedError: new_detect task‘错误
YOLOv8自定义检测头实战:从报错到修复的深度解析 当你在YOLOv8框架中尝试添加一个名为new_detect的自定义检测头时,突然遇到NotImplementedError: new_detect task错误,这可能会让你感到困惑。本文将带你深入理解YOLOv8的任务调度机制&#x…...
跨平台文件同步:OpenClaw+nanobot自动管理NAS文档
跨平台文件同步:OpenClawnanobot自动管理NAS文档 1. 为什么需要自动化文件管理? 作为一个长期被多设备文件同步问题困扰的用户,我一直在寻找一个既安全又灵活的解决方案。我的日常工作涉及MacBook、Windows台式机和家庭NAS之间的文件流转&a…...
