自动化脚本之加密内容解密适用于Linux

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 自动化脚本之加密内容解密适用于Linux

这个脚本用于解决加密文件提取的 , 懂的自然懂  不过多介绍。

脚本功能介绍

这个脚本是用来复制一个文件夹及其子文件夹和文件的结构到另一个文件夹的。它接受两个参数,分别是源文件夹和目标文件夹。它会遍历源文件夹中的所有条目,并根据条目的类型执行不同的操作:

  • 如果是目录,就在目标文件夹中创建同名的目录,并递归复制该目录下的内容。
  • 如果是文件,就在目标文件夹中创建同名的文件,并将源文件的内容复制到该文件中。
#!/bin/bash
 
# 脚本需要两个参数: 源文件夹和目标文件夹
if [ "$#" -ne 2 ]; then
  echo "Usage: $0 source_directory target_directory"
  exit 1
fi
 
src_dir="$1"
tgt_dir="$2"
 
# 如果目标文件夹不存在,则创建它
mkdir -p "$tgt_dir"
 
# 用于递归复制文件和目录结构的函数
function copy_structure() {
  local src_path="$1"
  local tgt_path="$2"
 
  shopt -s dotglob
  for item in "$src_path"/*; do
    if [ -e "$item" ]; then  # 检查条目是否存在
      if [ -d "$item" ] && [ "$(basename "$item")" != "." ] && [ "$(basename "$item")" != ".." ]; then
        # 如果是目录, 则创建目标文件夹并递归复制
        echo "Creating directory: $tgt_path/$(basename "$item")"
  mkdir -p "$tgt_path/$(basename "$item")"
        copy_structure "$item" "$tgt_path/$(basename "$item")"
      elif [ -f "$item" ]; then
        # 如果是文件, 则复制文件并保留原始文件名
        local filename="$(basename -- "$item")"
        local extension="${filename##*.}"
        local name_only="${filename%.*}"
        if [ ! -d "$tgt_path/$name_only" ]; then
  echo "Copying file: $item -> $tgt_path/$name_only"
          touch "$tgt_path/$name_only"
          cat "$item" > "$tgt_path/$name_only"
          if [ "$extension" != "$name_only" ]; then
            mv "$tgt_path/$name_only" "$tgt_path/$name_only.$extension"
          fi
        fi
      fi
    fi
  done
  shopt -u dotglob
}
 
# 调用复制函数
copy_structure "$src_dir" "$tgt_dir"
 

使用示例

要运行这个脚本,需要在终端中输入:

bash copy_structure.sh source_directory target_directory

例如:

bash copy_structure.sh /home/user/test /home/user/backup

然后就可以看到类似下面的输出:

Creating directory: /home/user/backup/dir1
Copying file: /home/user/test/file1.txt -> /home/user/backup/file1.txt
Copying file: /home/user/test/dir1/file2.jpg -> /home/user/backup/dir1/file2.jpg
Creating directory: /home/user/backup/dir2
Copying file: /home/user/test/dir2/file3.pdf -> /home/user/backup/dir2/file3.pdf

文章

相关文章
|
1月前
|
数据采集 监控 数据挖掘
Python自动化脚本:高效办公新助手###
本文将带你走进Python自动化脚本的奇妙世界,探索其在提升办公效率中的强大潜力。随着信息技术的飞速发展,重复性工作逐渐被自动化工具取代。Python作为一门简洁而强大的编程语言,凭借其丰富的库支持和易学易用的特点,成为编写自动化脚本的首选。无论是数据处理、文件管理还是网页爬虫,Python都能游刃有余地完成任务,极大地减轻了人工操作的负担。接下来,让我们一起领略Python自动化脚本的魅力,开启高效办公的新篇章。 ###
|
22天前
|
Android开发 开发者 Python
通过标签清理微信好友:Python自动化脚本解析
微信已成为日常生活中的重要社交工具,但随着使用时间增长,好友列表可能变得臃肿。本文介绍了一个基于 Python 的自动化脚本,利用 `uiautomator2` 库,通过模拟用户操作实现根据标签批量清理微信好友的功能。脚本包括环境准备、类定义、方法实现等部分,详细解析了如何通过标签筛选并删除好友,适合需要批量管理微信好友的用户。
30 7
|
20天前
|
运维 Kubernetes Devops
自动化运维:从脚本到工具的演进之旅
在数字化浪潮中,自动化运维成为提升效率、保障系统稳定的关键。本文将探索自动化运维的发展脉络,从基础的Shell脚本编写到复杂的自动化工具应用,揭示这一技术变革如何重塑IT运维领域。我们将通过实际案例,展示自动化运维在简化工作流程、提高响应速度和降低人为错误中的重要作用。无论你是初学者还是资深专家,这篇文章都将为你提供宝贵的洞见和实用的技巧。
|
28天前
|
SQL 测试技术 API
如何编写API接口的自动化测试脚本
本文详细介绍了编写API自动化测试脚本的方法和最佳实践,涵盖确定测试需求、选择测试框架、编写测试脚本(如使用Postman和Python Requests库)、参数化和数据驱动测试、断言和验证、集成CI/CD、生成测试报告及维护更新等内容,旨在帮助开发者构建高效可靠的API测试体系。
|
26天前
|
运维 Devops
自动化运维:从脚本到DevOps的进化之旅
在数字化时代,自动化运维不仅是提高生产效率的关键,更是企业竞争力的象征。本文将带领读者穿越自动化运维的发展历程,从最初的脚本编写到现代DevOps文化的形成,揭示这一演变如何重塑IT行业的工作模式。通过具体案例,我们将展示自动化工具和实践如何简化复杂任务,优化流程,并促进团队协作。你将发现,自动化运维不仅关乎技术的进步,更体现了人、流程和技术三者之间协同增效的深层逻辑。
|
27天前
|
监控 数据挖掘 数据安全/隐私保护
Python脚本:自动化下载视频的日志记录
Python脚本:自动化下载视频的日志记录
|
1月前
|
机器学习/深度学习 人工智能 运维
自动化运维之路:从脚本到工具的演进
在IT运维领域,效率和准确性是衡量工作成效的关键指标。随着技术的发展,自动化运维逐渐成为提升这两个指标的重要手段。本文将带领读者了解自动化运维的演变历程,从最初的简单脚本编写到现今复杂的自动化工具应用,展示如何通过技术提升运维效率。文章不仅介绍理论和实践案例,还提供了代码示例,帮助读者理解自动化运维的实际应用场景。
|
1月前
|
运维 监控 网络安全
自动化运维的崛起:如何利用Python脚本简化日常任务
【10月更文挑战第43天】在数字化时代的浪潮中,运维工作已从繁琐的手工操作转变为高效的自动化流程。本文将引导您了解如何运用Python编写脚本,以实现日常运维任务的自动化,从而提升工作效率和准确性。我们将通过一个实际案例,展示如何使用Python来自动部署应用、监控服务器状态并生成报告。文章不仅适合运维新手入门,也能为有经验的运维工程师提供新的视角和灵感。
|
1月前
|
存储 Python
Python自动化脚本编写指南
【10月更文挑战第38天】本文旨在为初学者提供一条清晰的路径,通过Python实现日常任务的自动化。我们将从基础语法讲起,逐步引导读者理解如何将代码块组合成有效脚本,并探讨常见错误及调试技巧。文章不仅涉及理论知识,还包括实际案例分析,帮助读者快速入门并提升编程能力。
75 2
|
1月前
|
运维 监控 Python
自动化运维:使用Python脚本简化日常任务
【10月更文挑战第36天】在数字化时代,运维工作的效率和准确性成为企业竞争力的关键。本文将介绍如何通过编写Python脚本来自动化日常的运维任务,不仅提高工作效率,还能降低人为错误的风险。从基础的文件操作到进阶的网络管理,我们将一步步展示Python在自动化运维中的应用,并分享实用的代码示例,帮助读者快速掌握自动化运维的核心技能。
88 3