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将一个文件夹内剪切至另一个文件夹

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Nacos、Eureka和Zookeeper有什么区别

Nacos、Eureka和Zookeeper都是服务注册中心&#xff0c;它们的主要功能是管理分布式系统中各个微服务实例的注册与发现。它们之间的主要区别在于&#xff1a; 1. 语言支持&#xff1a;Nacos是用Java语言开发的&#xff0c;Eureka是用Java语言开发的&#xff0c;Zookeeper则是用…

开源项目ChatGPT-website再次更新,累计下载使用1600+

&#x1f4cb; 个人简介 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是阿牛&#xff0c;全栈领域优质创作者。&#x1f61c;&#x1f4dd; 个人主页&#xff1a;馆主阿牛&#x1f525;&#x1f389; 支持我&#xff1a;点赞&#x1f44d;收藏⭐️留言&#x1f4d…

【数组的深刻理解】

#include<stdio.h> #define N 10 int main() {int a[N] { 0 }; //定义并初始化数组return 0; } 概念&#xff1a;数组是具有相同数据类型的集合。 数组的内存布局 #include<stdio.h> int main() {int a 10;int b 20;int c 30;printf("%p\n", &a…

一文带你了解MySQL之optimizer trace神器的功效

前言&#xff1a; 对于MySQL 5.6以及之前的版本来说&#xff0c;查询优化器就像是一个黑盒子一样&#xff0c;你只能通过EXPLAIN语句查看到最后优化器决定使用的执行计划&#xff0c;却无法知道它为什么做这个决策。这对于一部分喜欢刨根问底的小伙伴来说简直是灾难&#xff1…

基于ARIMA-LSTM组合模型的预测方法研究(Python代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

招投标系统简介 招投标系统源码 java招投标系统 招投标系统功能设计

项目说明 随着公司的快速发展&#xff0c;企业人员和经营规模不断壮大&#xff0c;公司对内部招采管理的提升提出了更高的要求。在企业里建立一个公平、公开、公正的采购环境&#xff0c;最大限度控制采购成本至关重要。符合国家电子招投标法律法规及相关规范&#xff0c;以及…

如何使用wireShark的追踪流功能抓取并还原文件

简介 WireShark的追踪流功能可以帮我们抓取从网络上下载的各种文件&#xff0c;接下来就演示下如何抓取并且进行还原。 使用Nginx搭建文件存储服务器 只要是通过http网站下载的包&#xff0c;都可以通过追踪流工具进行抓取。这里为了演示&#xff0c;临时搭建一个Nginx文件存…

spring(不是springboot)集成apllo方案

现在到处都是基于 springboot 的微服务项目。 不巧手头碰到了一个 spring 的项目&#xff0c;打war包直接放到tomcat中启动的。 现在要将apollo集成进来&#xff0c;要求 Access Key 不可以放在properties 配置文件中&#xff0c;要统一使用apollo来管理。 步骤如下&#xff1a…

Goby 漏洞更新 |中保無限Modem Configuration Interface 默认口令漏洞

漏洞名称&#xff1a;中保無限Modem Configuration Interface 默认口令漏洞 English Name&#xff1a;Gemtek Modem Configuration Interface Default password vulnerability CVSS core: 5.0 影响资产数&#xff1a;4521 漏洞描述&#xff1a; Modem Configuration Inter…

断言无忧!接口自动化框架封装,Mysql数据库断言

目录 前言&#xff1a; 一、项目背景 二、框架封装 1. Mysql数据库连接 2. 查询功能 3. 断言功能 4. 使用示例 三、总结 前言&#xff1a; 随着互联网行业的迅猛发展&#xff0c;接口自动化测试在软件开发过程中扮演着越来越重要的角色。而在进行接口测试的过程中&…

仙人掌之歌——权力的游戏(2)

他是特级战斗英雄 “那个李通&#xff0c;会不会看起来好吓人呀&#xff1f;” 云冰洁有些紧张的样子&#xff0c;几乎要让陈速笑出来。 “哪有&#xff0c;一个很 nice 的人好吧。就是看起来比较严肃而已&#xff0c;我也从没看他笑过倒是。” 陈速让云冰洁看菜单&#xff0…

WBS项目分解的7大基本原则

制定和分解WBS&#xff0c;需要遵循的基本原则&#xff1a; 1、唯一性 每一项工作任务在WBS中是唯一的。 WBS项目分解的7大基本原则 2、负责制 每一项任务都需要明确责任人&#xff0c;一人负责&#xff0c;其他人参与。 3、可测量性 每一项任务都应该是可以量化和测量的&#…

ASEMI代理韩景元可控硅C106M参数,C106M封装,C106M尺寸

编辑-Z 韩景元可控硅C106M参数&#xff1a; 型号&#xff1a;C106M 断态重复峰值电压VDRM&#xff1a;600V 通态电流IT(RMS)&#xff1a;4A 通态浪涌电流ITSM&#xff1a;30A 平均栅极功耗PG(AV)&#xff1a;0.2W 峰值门功率耗散PGM&#xff1a;1W 工作接点温度Tj&…

Springboot +spring security,使用过滤器方式实现验证码功能

一.简介 在前面文章章节通过自定义认证器实现了验证码功能&#xff0c;这篇文章使用过滤器来实现验证码功能。 二.思路分析 实现逻辑和通过过滤器实现json格式登录一样&#xff0c;需要继承UsernamePasswordAuthenticationFilter&#xff0c;所以文档这块主要记录下代码实现…

UNIX网络编程卷一 学习笔记 第十六章 非阻塞式IO

套接字的默认状态是阻塞的&#xff0c;当发出一个不能立即完成的套接字调用时&#xff0c;进程将被投入睡眠&#xff0c;等待相应操作完成。可能阻塞的套接字调用有以下四类&#xff1a; 1.输入操作&#xff1a;包括read、readv、recv、recvfrom、recvmsg函数。如果进程对一个阻…

java版企业工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离 功能清单

Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下&#xff1a; 首页 工作台&#xff1a;待办工作、消息通知、预警信息&#xff0c;点击可进入相应的列表 项目进度图表&#xff1a;选择&#xff08;总体或单个&#xff09;项目显示…

嵌入式学习之Linux驱动(第九期_设备模型_教程更新了)_基于RK3568

驱动视频全新升级&#xff0c;并持续更新~更全&#xff0c;思路更科学&#xff0c;入门更简单。 迅为基于iTOP-RK3568开发板进行讲解&#xff0c;本次更新内容为第九期&#xff0c;主要讲解设备模型&#xff0c;共计29讲。视频选集 0.课程规划 06:35 1.抛砖引玉-设备模型…

vue 3.0使用 iframe 标签引入本地HTML页面,并实现数据交互

文章目录 1. 问题总结2. vue中引入html页面3. vue向html传递数据4. html向vue传递数据 1. 问题总结 最近在做vue的项目时候&#xff0c;需要引入本地html页面&#xff0c;中间遇到了很多问题&#xff0c;费时又费力&#xff0c;因此记录下来&#xff0c;以备不时之需&#xff…

win10微软Edge浏览器通过WeTab新标签页免费无限制使用ChatGPT的方法,操作简单,使用方便

目录 一、使用效果 二、注册使用教程 1.打开Edge浏览器扩展 2.选择Edge浏览器外接程序 3.搜索WeTab 4.进入管理扩展 5.启用扩展 ​编辑 6.进入WeTab新标签页 7.打开Chat AI 8.注册 9.使用 ChatGPT是OpenAI推出的人工智能语言模型&#xff0c;能够通过理解和学习人类…

多线性开发实例分享

一. 概述 首先&#xff0c;在这里有必要和大家复现一下我使用该技术的背景&#xff1a; 在使用若依框架的时候&#xff0c;由于实际开发的需要&#xff0c;我需要配置四个数据源&#xff0c;并且通过mapper轮流去查每个库的指定用户数据&#xff0c;从而去判断改库是否存在目标…