【powershell】Windows环境powershell 运维之历史文件压缩清理

🦄 个人主页——🎐开着拖拉机回家_Linux,大数据运维-CSDN博客 🎐✨🍁

🪁🍁🪁🍁🪁🍁🪁🍁 🪁🍁🪁🍁🪁🍁🪁 🪁🍁🪁🍁🪁🍁🪁🍁🪁🍁🪁🍁

感谢点赞和关注 ,每天进步一点点!加油!

目录

一、Power Shell概述

1.1 Windows Power Shell简介

1.2 PowerShell是什么

1.3 windows执行策略更改

二、PowerShell使用

2.1 文件复制

2.2 文件压缩清理


一、Power Shell概述


1.1 Windows Power Shell简介


Windows PowerShell 是微软发布的一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能。

引入了许多非常有用的新概念,从而进一步扩展了在 Windows 命令提示符和 Windows Script Host 环境中获得的知识和创建的脚本。

1.2 PowerShell是什么


PowerShell,从名字可以知道,他首先是一个shell,shell的意思就是和Linux的bash等一样、和原来的cmd一样就是在里边敲命令(可执行文件)使用;而Power就意味他是一个功能强大的shell,从面向用户而言,个人觉得其功能强大体现在以下几方面:

(1) 微软态度。微软是真正的在推行PowerShell,包括Office等更多自家软件,底层都是调用PowerShell来实现。

(2) 兼容性cmd。PowerShell包含原先cmd的所有命令,原先命令使用形式不变,在是在其基础上添加命令。

(3) 对标Linux。PowerShell使用了Linux Shell的思想,也就是所有的系统操作、配置,都可以在shell中敲写命令实现。

(4) 统一的命令格式和自包含的文档。PowerShell的两个优点:第一点是PowerShell所有命令使用统一的cmdlet命令格式(也就是“动词-名词”的格式,比如get-process)会使人很容易记住;第二点这里所谓自包含是指你要干一件事你可以逐步找到要做的事所需的所有命令,即便你记不得命令你也可以很容易找到,你找到命令看文档就很容易知道怎么使用。

1.3 windows执行策略更改


右击开始找到 powershell 管理员

进入powershell命令行执行如下命令一定要执行!

执行如下命令,回车选择Y( 复制后鼠标 右击可粘贴,也可将执行的命令放到临时文本中再复制到命令行执行)

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser

执行如下命令,回车选择Y

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope localMachine

执行下面的命令查看 CurrentUser,LocalMachine 是否已改为 Bypass

get-executionpolicy -list

修改后的执行策略检查

检查通过后,关闭powershell 即可。


二、PowerShell使用


2.1 文件复制


文件有一个目录拷贝到另一个目录

write-host "copy file data start ..."
# 当前日期
$fileDate=Get-Date -Format 'yyyy-MM-dd'
write-host $fileDate# 从当天的目录下拷贝文件到目标路径
Copy-Item  D:\test\00000\$fileDate\*   D:\test\00000\bak

执行结果

PowerShell ISE 提供模块方法查询,可以对ps脚本进行编辑运行和测试

2.2 文件压缩清理


获取文件夹下7天之前的天文件夹目录进行打包压缩,并删除7天之前的文件夹。压缩使用7-zip。

######################################################
#    Desc: File Compress 1.0                         #
#    Author: kangll                                  #
#    soft: Use 7-zip                                 #
#    Date: 2023-12-13                                #
################################################################################## 全局变量 #################### 设置7-zip命令程序路径
$zip7="D:\test\7-Zip\7z.exe"# 当天日期
$backup_date=get-date -format "yyyy-MM-dd"# 获取一周前的日期
$weekAgo=(get-date).adddays(-7)| get-date -format "yyyy-MM-dd"########################## bak file #######################
# 定位到待压缩的文件夹
$bak_file="D:\test\reid_traj"# 保存的路径
$bak_save_dir="D:\test\reid_traj"# 文件夹除当天外的日期文件夹都打包
Get-ChildItem $bak_file | ForEach-Object -Process{if ($_.CreationTime -lt $backup_date){# 使用7zip将轨迹文件夹目录下文件夹件压缩为zip格式 $dateStr=$_.name& $zip7 a -tzip $bak_save_dir\$dateStr.zip $bak_file\$dateStr}
}# 列出一周前的文件夹删除,除当天外的所有日期均打包完成
Get-ChildItem $bak_file | ForEach-Object -Process{if ($_.CreationTime -lt $weekAgo){# $_.Fullname ,获取文件夹全路径删除,D:\test\reid_traj\2023-05-11Remove-Item $_.Fullname  -Recurse}
}

执行完成 按照天路径打包

我们可以看下bat脚本,bat执行sqlServer存储过程。

:: 带"-"的日期
set today=%date:~0,4%-%date:~5,2%-%date:~8,2%
set today2=%date:~0,4%%date:~5,2%%date:~8,2%:: 数据库连接信息
set execOSQL="osql" -S localhost\ipva   -U sa -P 123456 -d test -Q:: 存储过程, windows环境执行存储过程将文件插入到表中
set "hhh=loadFile 'D:\test\reid_trace\%today%','%today2%'":: 存储过程执行
%loadFile.sql%
%execOSQL% "exec %hhh%"
if %errorlevel% == 0 (echo  -------------------- Procedure %hhh% executer successfully! --------------------) else (echo Procedure %hhh% executer failed!)

bat 和PS个人使用下来 感谢PS脚本更加强大和简单,BAT看起来就有点臃肿并复杂难懂。

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

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

相关文章

关于“Python”的核心知识点整理大全31

目录 12.4.2 在屏幕上绘制飞船 alien_invasion.py ​编辑12.5 重构:模块 game_functions 12.5.1 函数 check_events() game_functions.py alien_invasion.py 12.5.2 函数 update_screen() game_functions.py alien_invasion.py 12.6 驾驶飞船 12.6.1 响应…

虚拟机类加载机制

虚拟机类加载机制 什么是虚拟机的类加载机制? Java虚拟机将描述类的Class文件加载到内存中,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程叫做虚拟机的类加载机制 类加载的时机 一个类…

【MATLAB】史上最全的25种信号分解算法全家桶

有意向获取代码,请转文末观看代码获取方式~ 1 【MATLAB】EMD 信号分解算法 EMD 是一种信号分解方法,它将一个信号分解成有限个本质模态函数 (EMD) 的和,每个 EMD 都是具有局部特征的振动模式。EMD 分解的主要步骤如下: 将信号的…

机器学习数据的清洗,转化,汇总及建模完整步骤(基于Titanic数据集)

目录 介绍: 一、数据 二、检查数据缺失 三、数据分析 四、数据清洗 五、数据类别转化 六、数据汇总和整理 七、建模 介绍: 线性回归是一种常用的机器学习方法,用于建立一个输入变量与输出变量之间线性关系的预测模型。线性回归的目标…

3-10岁孩子语文能力培养里程碑

文章目录 基础能力3岁4岁5岁6-7岁(1-2年级)8-9岁(3-4年级)10岁(5年级) 阅读推荐&父母执行3岁4-5岁6-7岁(1-2年级)8-9岁(3-4年级)10岁(5年级&a…

Elasticsearch:什么是文本分类?

文本分类定义 - text classification 文本分类是一种机器学习,它将文本文档或句子分类为预定义的类或类别。 它分析文本的内容和含义,然后使用文本标签为其分配最合适的标签。 文本分类的实际应用包括情绪分析(确定评论中的正面或负面情绪&…

Linux操作系统(ACL)

ACL (针对特殊用户的特殊权限) 访问控制列表,可以针对文件和目录 ACL的真正效果主要体现在对文件的操作上 1. 如何查看ACL信息:getfacl 文件名(文件路径) 2. 如何设置普通文件ACL信息:setfacl -m u:用户名:权限 文件名 现在要求…

JVM垃圾收集器三色标记算法

垃圾收集算法 分代收集理论 当前虚拟机的垃圾收集都采用分代收集算法,这种算法没有什么新的思想,只是根据对象存活周期的不同将内存分为几块。一般将java堆分为新生代和老年代,这样我们就可以根据各个年代的特点选择合适的垃圾收集算法。 比…

NFT获工信部首肯!“符合中国国情”的Web3.0发展战略即将问世!

今年3月,香港立法会议员吴杰庄在出席中国全国两会时,提出《关于推动Web3.0产业发展的提案》,针对中国加强Web3.0技术研发、建立标准和培养人才等几方面提岀意见。 本月19日,中国工信部针对该提案提交答复,称该部高度重…

关于“Python”的核心知识点整理大全33

目录 12.8.3 将子弹存储到编组中 alien_invasion.py 注意 12.8.4 开火 game_functions.py 12.8.5 删除已消失的子弹 alien_invasion.py 12.8.6 限制子弹数量 settings.py game_functions.py 12.8.7 创建函数 update_bullets() game_functions.py alien_invasion.py…

【智慧之窗】AI驱动产品探索

一.初识 ChatGPT ChatGPT 是由 OpenAI 开发的自然语言处理(NLP)模型,基于 GPT(Generative Pre-trained Transformer)架构。GPT 系列的模型旨在理解和生成自然语言文本。ChatGPT 专注于支持对话性任务,即与…

如何通过ETLCloud的API对接功能实现各种SaaS平台数据对接

前言 当前使用SaaS系统的企业越来越多,当我们需要对SaaS系统中产生的数据进行分析和对接时就需要与SaaS系统提供的API进行对接,因为SaaS一般是不会提供数据库表给企业,这时就应该使用ETL(Extract, Transform, Load)的…

Spring MVC控制层框架

三、Spring MVC控制层框架 目录 一、SpringMVC简介和体验 1. 介绍2. 主要作用3. 核心组件和调用流程理解4. 快速体验 二、SpringMVC接收数据 1. 访问路径设置2. 接收参数(重点) 2.1 param 和 json参数比较2.2 param参数接收2.3 路径 参数接收2.4 json参…

Opencv入门五 (显示图片灰度值)

源码如下&#xff1a; #include <opencv2/opencv.hpp> int main(int argc, char** argv) { cv::Mat img_rgb, img_gry, img_cny; cv::namedWindow("Example Gray",cv::WINDOW_AUTOSIZE); cv::namedWindow("Example Canny", cv::WINDOW_…

Qt跨线程的槽函数执行

定义两个类&#xff1a;Receiver接收信号&#xff0c;等待2秒后执行。Sender发送信号触发Receiver槽函数的执行 class Receiver : public QObject {Q_OBJECT public slots:void exec() {QThread::sleep(1);qDebug() << QThread::currentThreadId() << "recei…

【lesson21】MySQL复合查询(2)子查询

文章目录 子查询测试要用到的表测试要用到的数据单行子查询案例 多行子查询案例 多列子查询案例 在from子句中使用子查询案例 合并查询union案例union all案例 子查询 子查询是指嵌入在其他sql语句中的select语句&#xff0c;也叫嵌套查询 测试要用到的表 测试要用到的数据 单…

多媒体信息化建设,动态数据中心,深入理解分布式系统

目录 一、前言二、双活数据中心三、数据备份方式四、设计双活数据中心需要考虑的问题1、延迟和稳定性2、Quorum/ Tie-Breaker3、工作负载 五、动态数据中心六、深入理解分布式系统1、内容介绍2、作者简介 大家好&#xff0c;我是哪吒。 文末送5本《深入理解分布式系统》 一、…

创建型模式 | 原型模式

一、原型模式 1、原理 原型模式&#xff0c;用原型实例指定创建对象的种类&#xff0c;并且通过拷贝这些原型创建新的对象。原型模式其实就是从一个对象再创建另外一个可定制的对象&#xff0c;而且不需要知道任何创建的细节。原型像是一个模板&#xff0c;可以基于它复制好多…

Seata1.4.2分布式事务搭建部署【Spring cloud Alibaba】

包下载 https://github.com/apache/incubator-seata/releases下载并上传到服务器 //解压 tar -zxvf seata-server-1.4.2.tar.gz创建Seata的数据库及表&#xff0c;地址&#xff1a;https://github.com/seata/seata/tree/develop/script/server 根据数据类型复制相应的sql&…

选择服装店收银系统源码需要注意的三个关键点

当选择服装店收银系统源码时&#xff0c;有几个关键点需要注意。首先&#xff0c;确保系统具备完备的功能&#xff0c;以满足日常运营的需求。其次&#xff0c;易用性和用户体验也是重要的考虑因素。最后&#xff0c;安全性和稳定性是不可忽视的要素。商人宝开源收银系统今天分…