linuxOPS基础_Linux文件管理
Linux下文件命名规则
可以使用哪些字符?
理论上除了字符“/”之外,所有的字符都可以使用,但是要注意,在目录名或文件名中,不建议使用某些特殊字符,例如, <、>、?、* 等,尽量避免使用。
工作时文件的命名规则:
① 由于linux严格区分大小写,所以尽量都用小写字母
② 如果必须对文件名进行分割,建议使用"_",例如:qayrup_cn_2023.log
_ 下划线,在Linux操作系统中,可以使用Shift键 + 减号
文件名的长度
目录名或文件名的长度不能超过 255 个字符
尽量不要太长,另外文件名称一定要见名知意,可以使用英文单词
文件名的大小写
Linux目录名或文件名是区分大小写的。如 qayrup、jiumei、lin和 demaxiya,是互不相同的目录名或文件名。
个人建议:
不要使用字符大小写来区分不同的文件或目录。
建议文件名一律使用小写字母
Linux文件扩展名
Linux文件的扩展名对 Linux 操作系统没有特殊的含义,Linux 系统并不以文件的扩展名开分区文件类型。例如,qayrup.exe 只是一个文件,其扩展名 .exe 并不代表此文件就一定是可执行的。
在Linux系统中,文件扩展名的用途为了使运维人员更好的区分不同的文件类型。
在Linux操作系统中,文件的类型是依靠权限位的标识符来进行区分的。当然也可以通过颜色,如黑色普通文件,天蓝色文件夹
Linux下的文件管理
在实际应用中,与目录相关的操作主要有两个:创建目录与删除目录
mkdir( make directory) 创建目录
语法1mkdir 创建目录
| 语法 | 作用 |
|---|---|
| # mkdir 目录名称 | 就是根据目录的名称创建一个目录 |
| # mkdir -p 目录1/目录2/目录3 | 递归创建,从左边的路径开始一级一级创建目录,直到路径结束 |
| # mkdir 目录名称1 目录名称2 目录名称3 … | 使用mkdir同时创建多个目录 |
示例1
在已知目录(/usr/local)下创建多级目录(nginx/conf)
#mkdir /usr/local/nginx/conf
如上,提示我无法创建,因为/usr/local目录下并没有nginx
解决方案:如果我们想同时创建多级目录,必须使用-p选项,其会从左向右一级一级创建目录。
#mkdir -p /usr/local/nginx/conf
执行成功,可以看到conf已经在nginx下了
案例2 在当前目录下创建a、b、c三个目录
# mkdir a
# mkdir b
# mkdir c 或
# mkdir a b c
mkdir总结
一个目录一个目录创建# mkdir 目录名称
多级目录一起创建# mkdir -p 目录名称1/目录名称2/…
同时创建多个目录# mkdir 目录名称1 目录名称2 目录名称3
rmdir(remove directory) 目录删除(必须是空目录)
| 语法 | 作用 |
|---|---|
| # rmdir 目录名称 | 移除目录 |
| # rmdir -p 目录/目录 | 递归删除空目录 |
| # rmdir 目录名称1 目录名称2 目录名称3 … | 同时删除多个目录 |
示例1 rmdir移除空目录
# rmdir 目录名称

示例2 rmdir移除多级空目录
如下,先使用mkdir创建多级目录,然后使用rmdir删除这个多级目录
# rmdir -p k/a/b
示例3 rmdir 移除多个空目录
# rmdir b c
示例4 rmdir 删除非空目录出错
新增一个多级目录a/b/c然后删除
# rmdir a

rmdir总结
# rmdir 目录名称,删除某个空目录
# rmdir -p 目录名称1/目录名称2/目录名称3/…,同时删除多级目录(从右向左一级一级删除)
# rmdir 目录名称1 目录名称2 目录名称3,同时删除多个空目录
# rmdir 删除目录应该是空目录否则会报错
touch 创建文件
| 语法 | 作用 |
|---|---|
| # touch 文件名称 | 在Linux系统中的当前目录下创建一个文件 |
| # touch 文件名称1 文件名称2 文件名称3 … | 同时创建多个文件 |
| # touch 文件名称{开始序号…结束序号} | {1…5}根据序号同时创建多个文件 |
示例1在当前目录下创建一个readme.txt文件
# touch readme.txt

示例2 使用touch命令同时创建多个文件
创建一个shop商城文件夹,然后在内部创建index.php/admin.php/config.php三个文件
mkdir shop
touch shop/index.php
touch shop/admin.php
touch shop/config.php 或
touch shop/index.php shop/admin.php shop/config.php

这两条命令看看有何区别?
第一种写法:touch shop/index.php shop/admin.php shop/config.php
代表在shop目录下首先创建一个index.php,在创建一个admin.php,最后config.php
第二种写法:touch shop/index.php admin.php config.php
代表在shop目录下首先创建index.php,然后在当前目录下创建admin.php,最后在当前目录下创建config.php
示例3 {1…5}根据序号同时创建多个文件
案例:创建file1、file2、file3、file4、file5共5个文件
touch file1
touch file2
touch file3
touch file4
touch file5
或
touch file{1..5}

总结:
# touch 文件名称
# touch 文件名称1 文件名称2 文件名称3 …
# touch 文件名称{开始序号…结束序号}
rm(remove)文件删除
注意 linux里万物皆文件,也就是说,文件夹也是文件rm也能删除文件夹
| 语法 | 作用 |
|---|---|
| # rm 文件名 | 删除文件(会有提示) |
| # rm -f 文件名 | 强制删除文件 |
| # rm -rf 文件名 | 强制递归删除文件(能删除非空文件) |
示例 使用 rm 删除文件
案例使用rm file1删除file1文件
rm file1

示例2 使用rm -f 无提示删除文件
案例使用rm -f file2删除file2文件 不提示(慎重)
rm -f file2

示例3 删除非空的文件夹(-rf强制递归删除,不提示)
案例,使用 rm -rf a 递归删除a文件夹
rm -rf a

总结:
# rm 文件名称
# rm 文件名称1 文件名称2 文件名称3 …
# rm -f 文件名称 => 强制删除,不提示
# rm -rf 文件夹名称 => 递归删除文件夹
拓展 rm -rf /*,一定要慎重
# rm -rf /* => 代表删除根目录下的所有文件(如果没有备份,恢复的几率不高)
rm :删除
-r :递归删除(无论文件夹是否为空)
-f :强制删除不提示
/ :代表根分区
* :所有
cp (copy) 复制操作
| 语法 | 作用 |
|---|---|
| cp [选项] 源文件或文件夹 目标路径 | 复制指定文件到指定位置 |
| cp 源文件路径 目标路径 | 复制一个文件到指定位置 |
| cp 源文件路径 目标路径/新文名称 | 复制一个文件到指定位置并重命名 |
| cp -r 源文件路径 目标路径 | 递归复制一个文件到指定位置,(主要用于文件夹) |
示例1 使用cp 复制一个文件到指定路径
案例使用cp ./file3 ./c/ 将file3复制到 c目录中

示例2 使用cp 复制一个文件并重命名
案例: 使用cp ./file4 ./c/newfile4 将file4复制到c文件夹内并重命名为newfile4

示例3 使用cp -r 递归复制一个文件夹及其内所有文件
案例使用cp -r ./c 文件夹及其内所有文件到文件夹b内
cp -r ./c ./b

总结:
复制文件# cp 源文件名称 指定路径
复制文件并重命名# cp 源文件名称 指定路径/新文件名称
复制文件夹# cp -r 源文件夹 指定路径
mv(move)文件剪切
# mv [options] 源文件或文件夹 目标路径/ 将指定文件剪切到指定路径
| options | 作用 |
|---|---|
| -r | 递归文件夹内所有文件执行剪切操作 |
| -f | 跳过同名文件覆盖确认选项,直接执行 |
示例1 使用mv将一个文件剪切至另一个路径
将file5剪切至 c文件夹下
mv ./file5 ./c

示例2 使用mv将一个文件夹内剪切至另一个文件夹

相关文章:
linuxOPS基础_Linux文件管理
Linux下文件命名规则 可以使用哪些字符? 理论上除了字符“/”之外,所有的字符都可以使用,但是要注意,在目录名或文件名中,不建议使用某些特殊字符,例如, <、>、?、* 等&…...
C语言——数据在内存中的存储(上)
数据在内存中的存储 1. 数据类型的介绍 之前已经介绍过C语言中的基本数据类型了,主要有: char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点数 注意:C语言中是是没…...
LinkedIn 国际版怎么在国内登录?怎么使用领英国际版?
自从去年底国内用户使用LinkedIn就只能跳转到领英职场,而且就只是一个简单的招聘求职平台,没办法搜索添加国外客户,开发客户资源的效率大打折扣。但是国际版领英就不受影响,东哥今天就给各位做外贸的朋友分享如何使用国际版领英。…...
QThread Class
QThread QThread类枚举类型成员函数可重写函数公共槽信号静态成员函数保护函数静态保护函数QThread简单案例1QThread简单案例2 QThread类 标准头文件:#include <QThread> qmake: QT core 继承(父): QObject枚举类型 线程的优先级 enum Priority { IdlePri…...
C语言中的运算符及其优先级详解
引言: 在C语言中,运算符是用于进行各种数学和逻辑运算的符号。了解不同类型的运算符及其优先级对于正确理解和编写C语言代码至关重要。本文将详细介绍C语言中常用的运算符,包括算术运算符、赋值运算符、比较运算符、逻辑运算符等,…...
【C语言】语言篇——数组和字符串
C站的小伙伴们,大家好呀😝😝!我最近在阅读学习刘汝佳老师的《算法竞赛入门经典》,今天将整理本书的第三章——数组和字符串的一些习题,本章习题较多,下选取部分习题进行练习总结,在这…...
Js写的二级联动和三级联动
二级联动的实现 第一步 在HTML页面创建两个 select 下拉列表元素,并设置id为 ‘province’和id ‘city’ <!--省份--> <select id"province" onchange"getCity()"></select><!--城市--> <select id"city&qu…...
一文带你了解UI自动化测试框架
PythonSeleniumUnittestDdtHTMLReport分布式数据驱动自动化测试框架结构 1、Business:公共业务模块,如登录模块,可以把登录模块进行封装供调用 ------login_business.py from Page_Object.Common_Page.login_page import Login_Page from H…...
【Linux】守护进程
守护进程(Daemon)是一种在后台运行的特殊进程。它通常在操作系统启动时启动,并一直运行直至系统关闭。它不与任何终端关联,并且没有标准输入、输出和错误流。它的主要作用是在系统启动后执行一些特定的任务或者提供某些服务&#…...
Vue中组件和插件有什么区别?
Vue中组件和插件有什么区别? 组件是什么 组件就是把图形、非图形的各种逻辑均抽象为一个统一的概念(组件)来实现开发的模式,在Vue中每一个.vue文件都可以视为一个组件 组件的优势 降低整个系统的耦合度,在保持接口…...
第五章 图像处理
文章目录 前言一、图像金字塔1.高斯金字塔2.拉普拉斯金字塔 二、图像轮廓1. 轮廓提取2. 轮廓绘制3. 轮廓特征4. 轮廓近似5. 轮廓标记 三、模板匹配四、直方图1. 对比度2. 绘制直方图3. 均衡化3.1 理论3.2 代码 4. CLAHE 五、图像傅里叶变换5.1 正弦平面波5.2 二维傅里叶变换5.3…...
算法8.从暴力递归到动态规划1
算法|8.从暴力递归到动态规划1 目前感觉,背包问题和货币数组问题本质相同,货币的与dp相关的三种代码写完了,快复习不完了,背包暂时先不写了,回头再写,补充,再总结,结合那个C大神的文…...
8-JDBC 编程
目录 1.数据库编程的必备条件 PS:程序是怎么操作数据库的? 2.什么是JDBC? 2.1.JDBC定义 2.2.JDBC工作原理 3.JDBC使用 3.1.创建项目并添加MySQL驱动包 3.2.使用代码操作数据库 3.2.1.获得数据源 3.2.2.获得连接 3.2.3.获得执行器 …...
零基础如何学习 Web 安全?
Web安全不仅是互联网的核心,而且还是云计算和移动互联网的最佳载体。对于信息安全从业者而言,Web安全是一个非常重要的研究课题之一。 Web应用是指采用B/S架构、通过HTTP/HTTPS协议提供服务的统称。随着互联网的广泛使用,社交网络、聊天工具…...
【简单实用框架】【AddressablesMgr】【可移植】
☀️博客主页:CSDN博客主页💨本文由 萌萌的小木屋 原创,首发于 CSDN💢🔥学习专栏推荐:面试汇总❗️游戏框架专栏推荐:游戏实用框架专栏⛅️点赞 👍 收藏 ⭐留言 📝&#…...
android 12.0Launcher3禁止拖拽app图标到第一屏
1.概述 在12.0进行定制化开发Launcher3中,会对Launcher3 做些要求,比如现在的需求就是Launcher3第一屏的图标固定,不让其他屏的图标拖动到 第一屏所以说这个需求和 禁止拖拽图标到Hotseat类似,也是从WorkSpace.java里面寻找解决方案 2.Launcher3禁止拖拽app图标到第一屏相…...
SkyLine简介
简介 SkyLine产品系列(TerraExplorer 、TerraGate、TerraBuilder)是一套优秀的三维数字地球平台软件。凭借其国际领先的三维数字化显示技术,它可以利用海量的遥感航测影像数据、数字高程数据以及其他二三维数据搭建出一个对真实世界进行模拟…...
算法基础学习笔记——④前缀和\差分\双指针\位运算
✨博主:命运之光 ✨专栏:算法基础学习 目录 ✨前缀和 ✨一维前缀和 🍓一维前缀和模板: ✨二维前缀和 🍓二位前缀和模板: 前言:算法学习笔记记录日常分享,需要的看哈O(∩_∩)O&a…...
【Linux系统基础快速入门详解】Linux下安装软件必知必会4种方法(yum,编译安装,rpm包,二进制方式)等详解
在 Linux 下安装软件有多种方法可供选择,常用的包括 yum、编译安装、rpm 包和二进制方式。下面对这些方法进行详细说明: 使用 yum 安装软件yum 是 Red Hat 系列 Linux 发行版中常用的软件包管理工具,通过 yum 可以方便地安装、升级和删除软件包。yum 默认从官方仓库中下载软…...
ASEMI代理长电可控硅BT136参数,BT136规格,BT136说明
编辑-Z 长电可控硅BT136参数: 型号:BT136 RMS通态电流IT(RMS):6A 非重复浪涌峰值导通电流ITSM:25A 峰值栅极电流IGM:2A 平均栅极功耗PG(AV):0.5W 存储接点温度范围Tstg:-40 to 150℃ 工…...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...






