「Linux系列」Linux 文件与目录管理

文章目录

  • 一、Linux 文件与目录管理
    • 案例 1: 创建文件和目录
    • 案例 2: 移动和重命名文件
    • 案例 3: 复制文件和目录
    • 案例 4: 删除文件和目录
    • 案例 5: 查看文件和目录信息
    • 案例 6: 更改文件权限
    • 案例 7: 创建符号链接
    • 案例 8: 查找文件
    • 案例 9: 使用通配符创建和删除文件
    • 案例 10: 创建具有特定权限的文件
    • 案例 11: 使用重定向和管道操作文件内容
    • 案例 12: 使用vi编辑器编辑文件
    • 案例 13: 批量重命名文件
    • 案例 14: 递归地复制目录及其内容
    • 案例 15: 查找并删除特定类型的文件
  • 二、相关链接

一、Linux 文件与目录管理

Linux的文件与目录管理涉及多个关键命令和概念。首先,理解Linux的文件系统结构是非常重要的,它是树状的,具有明确的层级关系。以下是一些常见的目录及其含义:

  • /root:超级管理员(root用户)的家目录。
  • /home:普通用户的家目录,用户在此目录下拥有所有权限。
  • /bin/sbin:存放可执行文件或命令。其中,/bin 中的命令是所有用户都可以执行的,而 /sbin 中的命令则仅限管理员执行。
  • /boot:存放系统内核文件和启动文件。
  • /dev:存放设备文件,如硬盘、光驱等。
  • /etc:存放系统程序和大部分系统配置文件,以及应用程序的配置文件。
  • /var:存放各种日志文件。
  • /lib:存放系统程序的动态连接共享库文件。

文件与目录管理的主要命令包括:

  • mkdir:用于创建目录。
  • touch:用于创建空文件。
  • mv:用于移动文件或目录,也可以用于重命名。
  • cp:用于复制文件和目录。
  • rm:用于删除文件或目录。
  • rmdir:用于删除空目录。

以下是一些Linux文件与目录管理的案例代码,演示了如何使用常用的命令进行基本的文件和目录操作。

案例 1: 创建文件和目录

# 创建目录
mkdir my_directory# 创建文件
touch my_directory/my_file.txt

案例 2: 移动和重命名文件

# 移动文件并重命名
mv my_directory/my_file.txt my_directory/new_file.txt# 或者,只是重命名文件
mv my_directory/new_file.txt my_directory/renamed_file.txt

案例 3: 复制文件和目录

# 复制文件
cp my_directory/renamed_file.txt my_directory/copy_of_file.txt# 复制目录(包含目录内的所有文件和子目录)
cp -r my_directory/ another_directory/

案例 4: 删除文件和目录

# 删除文件
rm my_directory/copy_of_file.txt# 删除目录(目录必须为空)
rmdir my_directory/empty_directory# 删除目录及其内容(非空目录)
rm -r my_directory/

案例 5: 查看文件和目录信息

# 查看目录内容
ls my_directory/# 查看文件详细信息
ls -l my_directory/renamed_file.txt# 查看目录树形结构
tree my_directory/

案例 6: 更改文件权限

# 更改文件权限,例如将文件设为所有用户可读
chmod a+r my_directory/renamed_file.txt# 查看文件权限
ls -l my_directory/renamed_file.txt

案例 7: 创建符号链接

# 创建指向文件的符号链接
ln -s my_directory/renamed_file.txt my_directory/link_to_file.txt# 创建指向目录的符号链接
ln -s my_directory/ another_link_to_directory/

案例 8: 查找文件

# 在当前目录及其子目录中查找名为 my_file.txt 的文件
find . -name my_file.txt# 使用locate命令查找文件(需要预先创建locate数据库)
sudo updatedb
locate my_file.txt

当然,以下是一些其他关于Linux文件与目录管理的案例代码:

案例 9: 使用通配符创建和删除文件

# 创建多个文件,使用通配符
touch file{1..5}.txt# 查看文件列表
ls -l file*.txt# 删除所有以file开头,以.txt结尾的文件
rm file*.txt

案例 10: 创建具有特定权限的文件

# 创建一个文件,并设置权限为只有所有者可以读写执行
touch secret_file.txt
chmod 700 secret_file.txt# 查看文件权限
ls -l secret_file.txt

案例 11: 使用重定向和管道操作文件内容

# 将echo命令的输出重定向到一个文件
echo "Hello, Linux!" > hello.txt# 使用cat命令查看文件内容,并通过管道传递给grep命令进行搜索
cat hello.txt | grep "Linux"# 将命令的输出追加到文件的末尾
echo "Welcome to Linux world!" >> hello.txt

案例 12: 使用vi编辑器编辑文件

# 打开文件进行编辑
vi myfile.txt# 在vi编辑器中,按i进入插入模式,输入文本,然后按Esc退出插入模式
# 输入:wq保存并退出,或者:q!强制退出不保存

案例 13: 批量重命名文件

# 假设有文件file1.txt, file2.txt, ..., file10.txt
# 使用for循环批量重命名,给文件名加上前缀"new_"
for file in file*.txt; domv "$file" "new_$file"
done

案例 14: 递归地复制目录及其内容

# 假设有一个目录source_dir及其内容需要复制到target_dir
cp -r source_dir/ target_dir/

案例 15: 查找并删除特定类型的文件

# 查找当前目录及其子目录中所有的.tmp文件并删除
find . -name "*.tmp" -exec rm {} \;

案例涵盖了Linux文件与目录管理的一些基本操作。请注意,执行删除操作时(如rm命令)应格外小心,确保不会误删重要数据。在实际使用中,建议首先了解每个命令的详细用法和选项,可以通过man命令(如man rm)查看命令的手册页以获取更多信息。

二、相关链接

  1. Linux官网
  2. Linux常用命令
  3. CentOS官网下载地址
  4. 「Linux系列」Linux简介及常见的Linux系统
  5. 「Linux系列」Linux 系统启动过程
  6. 「Linux系列」Linux 系统目录结构/忘记密码解决方法
  7. 「Linux系列」Linux 远程登录/文件基本属性

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

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

相关文章

小迪安全41WEB 攻防-通用漏洞XMLXXE无回显DTD 实体伪协议代码审计

#知识点: 1、XML&XXE-原理&发现&利用&修复等 2、XML&XXE-黑盒模式下的发现与利用 3、XML&XXE-白盒模式下的审计与利用 4、XML&XXE-无回显&伪协议&产生层面 #思路点: 参考:https://www.cnblo…

Linux 块设备驱动

Linux 三大驱动分别是:字符设备驱动、块设备驱动、网络设备驱动。 块设备是针对存储设备的,比如 SD 卡、EMMC、NAND Flash、Nor Flash、SPI Flash、机械硬盘、固态硬盘等。因此块设备驱动其实就是这些存储设备驱动,块设备驱动相比字符设备驱…

CentOS 7 编译安装 Git

CentOS 7 编译安装 Git 背景来源删除旧版本 Git安装依赖包下载 Git 源代码检验相关依赖,设置安装路径编译安装添加 Git 环境变量重新加载配置文件查看版本号参考文献 背景来源 为什么要安装新版本呢? 因为无聊,哈哈哈,其实也不是…

Linux下进程的调度与切换

🌎进程的调度与切换 文章目录: 进程的调度与切换 进程切换 进程调度       活动状态进程队列       位图判断       过期队列 总结 前言: 在Linux操作系统中,进程的调度与切换是操作系统核心功能之一&#xff…

RabbitMq——direct交换器、fanout交换器、 topic交换器

direct交换器: @Configuration =发送= @Bean protected Queue queue(){ Queue queue = new Queue(“myQueue”) return queue; } amqpTemplate.convertAndSend("myQueue","这是发送的内容"); 发送RabbitMq 发送成功 =接收=消费者(新项目)…

【JACS】:用于稳定单原子分散的催化剂架构可对吸附到 Pt 原子、氧化 Pt 簇和 TiO2上金属 Pt 簇的 CO 进行特定位点光谱和反应性测量

摘要:氧化物负载的贵金属纳米粒子是广泛使用的工业催化剂。由于费用和稀有性,开发降低贵金属纳米颗粒尺寸并稳定分散物质的合成方案至关重要。负载型原子分散的单贵金属原子代表了最有效的金属利用几何结构,尽管由于合成均匀且稳定的单原子分…

spring boot唯一性判断不满足后,如何Transactional回滚

在Spring Boot中,如果需要在唯一性判断不满足时进行事务回滚,可以通过以下方式实现: 首先,确保你的方法添加了Transactional注解,这会使得该方法在一个数据库事务中执行,如果方法中出现任何异常&#xff0…

《论文阅读》E-CORE:情感相关性增强的移情对话生成 EMNLP 2023

《论文阅读》E-CORE:情感相关性增强的移情对话生成 EMNLP 2023 前言摘要模型架构图构建边的构建和初始化节点的初始化图更新情感相关性加强解码损失函数总结前言 亲身阅读感受分享,细节画图解释,再也不用担心看不懂论文啦~ 无抄袭,无复制,纯手工敲击键盘~ 今天为大家带来…

IOS面试题object-c 121-125

121. 简述Category 在编译过后,是在什么时机与原有的类合并到一起的? ?1. 程序启动后,通过编译之后,Runtime 会进行初始化,调用 _objc_init。 2. 然后会 map_images。 3. 接下来调用 map_images_nolock。 4. 再然后就是 read_images,这个方法会读取所有的类的相关信息。…

2.3 性能度量

目录 2.3.1 错误路和精度 2.3.2 查准率,查全率与F1 2.3.4 代价敏感错误率与代价曲线 对学习器的泛化性能进行评估,不仅需要有效可行的实验估计方法,还需要有衡量模型泛化能力的评价标准,这就是性能度量(performance measure).性能度量反映了任务需求,…

uwsgi+nginx+django 部署学习

收集静态文件及部署配置 DEBUG False STATICFILES_DIRS [os.path.join(BASE_DIR, "static"), ] STATIC_ROOT /data/static python3 manage.py collectstatic 收集静态文件,成功后可在STATIC_ROOT目录查看 安装依赖 pip3 install uwsgi django项目结…

粤嵌6818开发板通过MobaXterm使用SSH连接开发板

链接:https://pan.baidu.com/s/18ISP4Ub1HtQx6jCvTQTUHw?pwdfjmu 提取码:fjmu 1.把SSH_config.tar.bz 下载到开发板中 2.解压 SSH_config.tar.bz 解压命令:tar -xzvf SSH_config.tar.bz 3.配置SSH 进入SSH/openssh目录&am…

Python二级备考(1)考纲+基础操作

考试大纲如下: 基本要求 考试内容 考试方式 比较希望能直接刷题,因为不懂的比较多可能会看视频。 基础操作刷题: 知乎大头计算机1-13题 import jieba txtinput() lsjieba.lcut(txt) print("{:.1f}".format(len(txt)/len(ls)…

鸿蒙Next 支持数据双向绑定的组件:Checkbox--Search--TextInput

Checkbox $$语法,$$绑定的变量发生变化时,会触发UI的刷新 Entry Component struct MvvmCase { State isMarry:boolean falseStatesearchText:string build() {Grid(){GridItem(){Column(){Text("checkbox 的双向绑定")Checkbox().select($$…

【GPT-SOVITS-04】SOVITS 模块-鉴别模型解析

说明:该系列文章从本人知乎账号迁入,主要原因是知乎图片附件过于模糊。 知乎专栏地址: 语音生成专栏 系列文章地址: 【GPT-SOVITS-01】源码梳理 【GPT-SOVITS-02】GPT模块解析 【GPT-SOVITS-03】SOVITS 模块-生成模型解析 【G…

机器学习_线性回归

文章目录 线性回归的定义损失函数(误差大小)梯度下降算法梯度下降的API(LinearRegression)均方误差(Mean Squared Error)MSE) 评价机制最小二乘法之正规方程正规方程vs梯度下降 欠拟合与过拟合回归算法之岭回归L2正则化 线性回归的定义 线性回归的定义是:目标值预期…

html5cssjs代码 022 表单输入类型示例

html5&css&js代码 022 表单输入类型示例 一、代码二、解释 这段HTML代码定义了一个网页&#xff0c;展示了表单输入类型示例。 一、代码 <!DOCTYPE html> <html lang"zh-cn"> <head><title>编程笔记 html5&css&js 表单输入…

JS06-class对象

class对象 className 修改样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content&quo…

短剧小程序软件开发首页接口转发到Selectpage

工具&#xff1a;用的是uniapp开发 技术栈&#xff1a;vue、nide..js、云开发 用时&#xff1a;20工作天 软件&#xff1a;Hb、微信开发者工具 <?php namespace app\api\controller; use app\common\controller\Api; /** * 首页接口 */ class Index extends Api { …

pytorch卸载cuda+cudnn并重新配置GPU环境,亲测有效

pytorch卸载cudacudnn 一、卸载cuda 进入【控制面板】&#xff0c;点击【卸载程序】 将红色框中带版本号的都卸载 二、删除cudnn配置 1、进入安装路径 将以下版本号文件直接删除 pytorch配置GPU环境 一、查看支持的cuda最高版本 1、winr&#xff0c;输入cmd&#xf…