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

3月5日作业

代码作业:

#!/bin/bash# 清空目录函数
safe_clear_dir() {local dir="$1"local name="$2"if [ -d "$dir" ]; thenwhile true; doread -p "检测到 $name 目录已存在,请选择操作:
1) 清空目录内容
2) 保留目录内容
请输入选项数字: " choicecase $choice in1)echo "正在清空 $name 目录..."shopt -s dotglobrm -rf "${dir:?}"/* 2>/dev/nullshopt -u dotglobreturn 0;;2)echo "保留现有 $name 目录内容"return 0;;*)echo "无效输入,请重新选择";;esacdoneelsemkdir -p "$dir"echo "已创建 $name 目录"fi
}# 处理目标目录
safe_clear_dir "$HOME/file_dir" "文件存储"
safe_clear_dir "$HOME/dir_dir" "目录存储"# 获取并验证输入路径
while true; doread -p "请输入要处理的路径: " input_pathpath=$(realpath "$input_path" 2>/dev/null)if [ -z "$path" ]; thenecho "错误:路径不能为空!"continuefiif [ ! -e "$path" ]; thenecho "错误:路径不存在!"continuefiif [ ! -d "$path" ]; thenecho "错误:必须输入目录路径!"continuefibreak
done# 初始化计数器
count_file=0
count_dir=0# 文件拷贝操作
process_files() {echo "正在处理普通文件..."while IFS= read -r -d '' file; docp -f "$file" "$HOME/file_dir/"((count_file++))done < <(find "$path" -maxdepth 1 -mindepth 1 -type f -print0 2>/dev/null)echo "正在处理目录文件..."while IFS= read -r -d '' dir; docp -r "$dir" "$HOME/dir_dir/"((count_dir++))done < <(find "$path" -maxdepth 1 -mindepth 1 -type d -print0 2>/dev/null)
}
if process_files;thenecho "操作完成,统计结果:"echo "成功拷贝普通文件: $count_file 个"echo "成功拷贝目录文件: $count_dir 个"echo "文件存储位置: $HOME/file_dir"echo "目录存储位置: $HOME/dir_dir"
fi

创建目录:

处理文件:

删除文件:

文件已清空

删除文件夹:

功能完成。

思维导图:

相关文章:

3月5日作业

代码作业&#xff1a; #!/bin/bash# 清空目录函数 safe_clear_dir() {local dir"$1"local name"$2"if [ -d "$dir" ]; thenwhile true; doread -p "检测到 $name 目录已存在&#xff0c;请选择操作&#xff1a; 1) 清空目录内容 2) 保留目…...

【MySQL】增删改查

目录 一、新增&#xff08;Create&#xff09; 单行数据 全列插入 多行数据 指定列插入 插入时间 二、查询&#xff08;Retrieve&#xff09; 全列查询 指定列查询 查询字段为表达式 别名 去重&#xff1a;DISTINCT 排序&#xff1a;ORDER BY 条件查询&#xff1…...

【三维生成】StarGen:基于视频扩散模型的可扩展的时空自回归场景生成

标题&#xff1a;《StarGen: A Spatiotemporal Autoregression Framework with Video Diffusion Model for Scalable and Controllable Scene Generation》 项目&#xff1a;https://zju3dv.github.io/StarGen 来源&#xff1a;商汤科技、浙大CAD、Tetras.AI 文章目录 摘要一、…...

线反转法实现矩形键盘按键识别

由于行、列线为多键共用&#xff0c;各按键彼此将相互发 生影响&#xff0c;必须将行、列线信号配合起来并作适当的处 理&#xff0c;才能确定闭合键的位置。 线反转法 第1步&#xff1a;列线输出为全低电平&#xff0c;则行线中电平由高变低 的所在行为按键所在行。 第2步&…...

在 Element Plus 的 <el-select> 组件中,如果需要将 <el-option> 的默认值设置为 null。 用于枚举传值

文章目录 引言轻松实现 `<el-option>` 的默认值为 `null`I 实现方式监听清空事件 【推荐】使用 v-model 绑定 null添加一个值为 null 的选项处理 null 值的显示引言 背景:接口签名规则要求空串参与,空对象不参与签名计算 // 空字符串“” 参与签名组串,null不参与签…...

大白话面试中应对自我介绍

在面试中&#xff0c;自我介绍是开场的关键环节&#xff0c;它就像你递给面试官的一张“个人名片”&#xff0c;要让面试官快速了解你并对你产生兴趣。下面详细讲讲应对自我介绍的要点及回答范例。 一、自我介绍的时间把控 一般面试中的自我介绍控制在1 - 3分钟比较合适。时间…...

Pytorch构建LeNet进行MNIST识别 #自用

LeNet是一种经典的卷积神经网络&#xff08;CNN&#xff09;结构&#xff0c;由Yann LeCun等人在1998年提出&#xff0c;主要用于手写数字识别&#xff08;如MNIST数据集&#xff09;。作为最早的实用化卷积神经网络&#xff0c;LeNet为现代深度学习模型奠定了基础&#xff0c;…...

元宇宙崛起:区块链与金融科技共绘数字新世界

文章目录 一、引言二、元宇宙与区块链的深度融合三、区块链在元宇宙金融中的应用四、金融科技在元宇宙中的创新应用五、面临的挑战与机遇《区块链与金融科技》亮点内容简介获取方式 一、引言 随着科技的飞速发展&#xff0c;元宇宙概念逐渐走进人们的视野&#xff0c;成为数字…...

React Native 实现滑一点点内容区块指示器也滑一点点

效果图如上&#xff0c;内容滑一点点&#xff0c;指示器也按比例话一点点&#xff0c;列表宽度跟数据有关。 实现思路如下&#xff1a; 1.监听列表滑动事件&#xff0c;获取列表横向滑动距离&#xff0c;假设为A&#xff1b; 2.获取列表的宽度&#xff0c;及列表可滑动的宽度…...

怎么写C#命令行参数程序,及控制台带参数案例(程序完整源码)下载

C#命令行参数解析控制台带参数编写案例&#xff08;程序完整源码&#xff09;下载链接 https://download.csdn.net/download/luckyext/90434790 在CMD命令窗口&#xff0c;输入ping 、ipconfig等这样的命令&#xff0c;大家应该都知道&#xff0c;但很多同学可能不知道怎么写…...

全国青少年航天创新大赛各项目对比分析

全国青少年航天创新大赛各项目对比分析 一、比赛场地对比 项目名称场地尺寸场地特点组别差异筑梦天宫虚拟三维场景动态布局&#xff0c;小学组3停泊处&#xff0c;初高中组6停泊处&#xff1b;涉及传送带、机械臂、传感器等虚拟设备。初中/高中组任务复杂度更高&#xff0c;运…...

基于RAG的法律条文智能助手

文章目录 前言一、 项目背景与需求设计二、 数据收集与整理三、 核心实现流程1. 配置与模型初始化1. 配置区2. 模型初始化&#xff08;init_models 函数&#xff09;3. 数据加载与验证&#xff08;load_and_validate_json_files 函数&#xff09;4. 节点生成&#xff08;create…...

智能对讲机:5G+AI赋能下的石油工业新“声”态

在浩瀚的能源版图上&#xff0c;中国正以非凡的“深度”探索着石油资源的奥秘。随着5G技术的不断成熟与普及&#xff0c;曾经“满山遍野找信号”的石油工人&#xff0c;如今已步入了一个全新的通信时代。在这个时代里&#xff0c;智能对讲机成为了连接指挥中心与一线工人的桥梁…...

leetcode日记(77)子集Ⅱ

不知道为什么看到这道题就很头痛…… 其实只要掌握nums不包含重复元素的情况下的代码就行了。 若nums不能包含重复元素&#xff0c;那么使用回溯很容易就能写出来&#xff1a; class Solution {void hs(vector<int> v,int x,vector<int> r,vector<vector<…...

Linux tar命令

压缩解压缩 1. tar 命令 语法&#xff1a; tar [主选项 辅选项] 文件或目录 参数功能-c创建新的归档文件&#xff08;打包&#xff09;-x从归档文件中提取文件&#xff08;解包&#xff09;-f <文件名>指定归档文件名-v显示操作的详细信息-z通过gzip压缩归档文件-j通…...

【nodeJS】服务端连接mysql、定义一个接口,并在前端调用

服务端连接数据库&#xff0c;并简单使用 服务器连接mysql后端定义接口前端调用接口封装axios&#xff08;简易版&#xff09;解决前端请求接口返回了一个html 定义api请求vue中调用接口 服务器连接mysql 安装mysql2&#xff1a;npm install mysql2启动服务&#xff1a;npm sta…...

驱动开发系列40 - Linux 显卡KMD驱动代码分析(一) - 设备初始化过程

目录 一:概述 二:显卡内核态驱动的主要功能 1. 设备初始化 2. 内存管理 3. 中断处理 4. 显示管理 5. 电源管理 三:Linux显卡内核态驱动的架构 四:PCI设备初始化过程 五:显卡设备初始化 一:概述 显卡内核态驱动(KMD)负责与GPU硬件直接交互,提供底层接口、管理显存…...

玩转大语言模型——Ubuntu系统环境下使用llama.cpp进行CPU与GPU混合推理deepseek

系列文章目录 玩转大语言模型——使用langchain和Ollama本地部署大语言模型 玩转大语言模型——三分钟教你用langchain提示词工程获得猫娘女友 玩转大语言模型——ollama导入huggingface下载的模型 玩转大语言模型——langchain调用ollama视觉多模态语言模型 玩转大语言模型—…...

20250301在chrome中安装CRX猫抓

20250301在chrome中安装CRX猫抓 2025/3/1 18:08 百度&#xff1a;猫抓 CRX https://www.crx4chrome.com/crx/49597/ 猫抓 (cat-catch) Crx File 2.5.9 for Chrome (Latest Version) Get Latest Version of 猫抓 (cat-catch) from Web Store Developer Tools > cat-catch / E…...

Docker 深度解析:适合零基础用户的详解

此博客涵盖 Docker 的基本概念和作用、架构和核心组件、与传统虚拟机的对比、安装与基本操作&#xff0c;以及在实际开发和运维中的应用场景。 首先&#xff0c;详细解释了 Docker 的基本概念&#xff0c;包括它的诞生背景、作用及其如何解决传统应用部署中的问题。然后&#…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地

借阿里云中企出海大会的东风&#xff0c;以**「云启出海&#xff0c;智联未来&#xff5c;打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办&#xff0c;现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

postgresql|数据库|只读用户的创建和删除(备忘)

CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”&#xff0c;物流的终极形态正在诞生 想象这样的场景&#xff1a; 凌晨3点&#xff0c;某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径&#xff1b;AI视觉系统在0.1秒内扫描包裹信息&#xff1b;数字孪生平台正模拟次日峰值流量压力…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

Java面试专项一-准备篇

一、企业简历筛选规则 一般企业的简历筛选流程&#xff1a;首先由HR先筛选一部分简历后&#xff0c;在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如&#xff1a;Boss直聘&#xff08;招聘方平台&#xff09; 直接按照条件进行筛选 例如&#xff1a…...

在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案

这个问题我看其他博主也写了&#xff0c;要么要会员、要么写的乱七八糟。这里我整理一下&#xff0c;把问题说清楚并且给出代码&#xff0c;拿去用就行&#xff0c;照着葫芦画瓢。 问题 在继承QWebEngineView后&#xff0c;重写mousePressEvent或event函数无法捕获鼠标按下事…...

【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制

使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下&#xff0c;限制某个 IP 的访问频率是非常重要的&#xff0c;可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案&#xff0c;使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术解析

Java求职者面试指南&#xff1a;Spring、Spring Boot、Spring MVC与MyBatis技术解析 一、第一轮基础概念问题 1. Spring框架的核心容器是什么&#xff1f;它的作用是什么&#xff1f; Spring框架的核心容器是IoC&#xff08;控制反转&#xff09;容器。它的主要作用是管理对…...