当前位置: 首页 > news >正文

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下文件命名规则 可以使用哪些字符&#xff1f; 理论上除了字符“/”之外&#xff0c;所有的字符都可以使用&#xff0c;但是要注意&#xff0c;在目录名或文件名中&#xff0c;不建议使用某些特殊字符&#xff0c;例如&#xff0c; <、>、&#xff1f;、* 等&…...

C语言——数据在内存中的存储(上)

数据在内存中的存储 1. 数据类型的介绍 之前已经介绍过C语言中的基本数据类型了&#xff0c;主要有&#xff1a; char //字符数据类型short //短整型int //整形long //长整型long long //更长的整形float //单精度浮点数double //双精度浮点数 注意&#xff1a;C语言中是是没…...

LinkedIn 国际版怎么在国内登录?怎么使用领英国际版?

自从去年底国内用户使用LinkedIn就只能跳转到领英职场&#xff0c;而且就只是一个简单的招聘求职平台&#xff0c;没办法搜索添加国外客户&#xff0c;开发客户资源的效率大打折扣。但是国际版领英就不受影响&#xff0c;东哥今天就给各位做外贸的朋友分享如何使用国际版领英。…...

QThread Class

QThread QThread类枚举类型成员函数可重写函数公共槽信号静态成员函数保护函数静态保护函数QThread简单案例1QThread简单案例2 QThread类 标准头文件&#xff1a;#include <QThread> qmake: QT core 继承(父): QObject枚举类型 线程的优先级 enum Priority { IdlePri…...

C语言中的运算符及其优先级详解

引言&#xff1a; 在C语言中&#xff0c;运算符是用于进行各种数学和逻辑运算的符号。了解不同类型的运算符及其优先级对于正确理解和编写C语言代码至关重要。本文将详细介绍C语言中常用的运算符&#xff0c;包括算术运算符、赋值运算符、比较运算符、逻辑运算符等&#xff0c;…...

【C语言】语言篇——数组和字符串

C站的小伙伴们&#xff0c;大家好呀&#x1f61d;&#x1f61d;&#xff01;我最近在阅读学习刘汝佳老师的《算法竞赛入门经典》&#xff0c;今天将整理本书的第三章——数组和字符串的一些习题&#xff0c;本章习题较多&#xff0c;下选取部分习题进行练习总结&#xff0c;在这…...

Js写的二级联动和三级联动

二级联动的实现 第一步 在HTML页面创建两个 select 下拉列表元素&#xff0c;并设置id为 ‘province’和id ‘city’ <!--省份--> <select id"province" onchange"getCity()"></select><!--城市--> <select id"city&qu…...

一文带你了解UI自动化测试框架

PythonSeleniumUnittestDdtHTMLReport分布式数据驱动自动化测试框架结构 1、Business&#xff1a;公共业务模块&#xff0c;如登录模块&#xff0c;可以把登录模块进行封装供调用 ------login_business.py from Page_Object.Common_Page.login_page import Login_Page from H…...

【Linux】守护进程

守护进程&#xff08;Daemon&#xff09;是一种在后台运行的特殊进程。它通常在操作系统启动时启动&#xff0c;并一直运行直至系统关闭。它不与任何终端关联&#xff0c;并且没有标准输入、输出和错误流。它的主要作用是在系统启动后执行一些特定的任务或者提供某些服务&#…...

Vue中组件和插件有什么区别?

Vue中组件和插件有什么区别&#xff1f; 组件是什么 组件就是把图形、非图形的各种逻辑均抽象为一个统一的概念&#xff08;组件&#xff09;来实现开发的模式&#xff0c;在Vue中每一个.vue文件都可以视为一个组件 组件的优势 降低整个系统的耦合度&#xff0c;在保持接口…...

第五章 图像处理

文章目录 前言一、图像金字塔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 目前感觉&#xff0c;背包问题和货币数组问题本质相同&#xff0c;货币的与dp相关的三种代码写完了&#xff0c;快复习不完了&#xff0c;背包暂时先不写了&#xff0c;回头再写&#xff0c;补充&#xff0c;再总结&#xff0c;结合那个C大神的文…...

8-JDBC 编程

目录 1.数据库编程的必备条件 PS&#xff1a;程序是怎么操作数据库的&#xff1f; 2.什么是JDBC&#xff1f; 2.1.JDBC定义 2.2.JDBC工作原理 3.JDBC使用 3.1.创建项目并添加MySQL驱动包 3.2.使用代码操作数据库 3.2.1.获得数据源 3.2.2.获得连接 3.2.3.获得执行器 …...

零基础如何学习 Web 安全?

Web安全不仅是互联网的核心&#xff0c;而且还是云计算和移动互联网的最佳载体。对于信息安全从业者而言&#xff0c;Web安全是一个非常重要的研究课题之一。 Web应用是指采用B/S架构、通过HTTP/HTTPS协议提供服务的统称。随着互联网的广泛使用&#xff0c;社交网络、聊天工具…...

【简单实用框架】【AddressablesMgr】【可移植】

☀️博客主页&#xff1a;CSDN博客主页&#x1f4a8;本文由 萌萌的小木屋 原创&#xff0c;首发于 CSDN&#x1f4a2;&#x1f525;学习专栏推荐&#xff1a;面试汇总❗️游戏框架专栏推荐&#xff1a;游戏实用框架专栏⛅️点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd;&#…...

android 12.0Launcher3禁止拖拽app图标到第一屏

1.概述 在12.0进行定制化开发Launcher3中,会对Launcher3 做些要求,比如现在的需求就是Launcher3第一屏的图标固定,不让其他屏的图标拖动到 第一屏所以说这个需求和 禁止拖拽图标到Hotseat类似,也是从WorkSpace.java里面寻找解决方案 2.Launcher3禁止拖拽app图标到第一屏相…...

SkyLine简介

简介 SkyLine产品系列&#xff08;TerraExplorer 、TerraGate、TerraBuilder&#xff09;是一套优秀的三维数字地球平台软件。凭借其国际领先的三维数字化显示技术&#xff0c;它可以利用海量的遥感航测影像数据、数字高程数据以及其他二三维数据搭建出一个对真实世界进行模拟…...

算法基础学习笔记——④前缀和\差分\双指针\位运算

✨博主&#xff1a;命运之光 ✨专栏&#xff1a;算法基础学习 目录 ✨前缀和 ✨一维前缀和 &#x1f353;一维前缀和模板&#xff1a; ✨二维前缀和 &#x1f353;二位前缀和模板&#xff1a; 前言&#xff1a;算法学习笔记记录日常分享&#xff0c;需要的看哈O(∩_∩)O&a…...

【Linux系统基础快速入门详解】Linux下安装软件必知必会4种方法(yum,编译安装,rpm包,二进制方式)等详解

在 Linux 下安装软件有多种方法可供选择,常用的包括 yum、编译安装、rpm 包和二进制方式。下面对这些方法进行详细说明: 使用 yum 安装软件yum 是 Red Hat 系列 Linux 发行版中常用的软件包管理工具,通过 yum 可以方便地安装、升级和删除软件包。yum 默认从官方仓库中下载软…...

ASEMI代理长电可控硅BT136参数,BT136规格,BT136说明

编辑-Z 长电可控硅BT136参数&#xff1a; 型号&#xff1a;BT136 RMS通态电流IT(RMS)&#xff1a;6A 非重复浪涌峰值导通电流ITSM&#xff1a;25A 峰值栅极电流IGM&#xff1a;2A 平均栅极功耗PG(AV)&#xff1a;0.5W 存储接点温度范围Tstg&#xff1a;-40 to 150℃ 工…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现

摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序&#xff0c;以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务&#xff0c;提供稳定高效的数据处理与业务逻辑支持&#xff1b;利用 uniapp 实现跨平台前…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架&#xff0c;允许使用简单的变成模型跨计算机对大型集群进行分布式处理&#xff08;1.海量的数据存储 2.海量数据的计算&#xff09;Hadoop核心组件 hdfs&#xff08;分布式文件存储系统&#xff09;&a…...

Linux 中如何提取压缩文件 ?

Linux 是一种流行的开源操作系统&#xff0c;它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间&#xff0c;使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的&#xff0c;要在 …...

uniapp手机号一键登录保姆级教程(包含前端和后端)

目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号&#xff08;第三种&#xff09;后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...