一个无需软件加密文件夹的bat(批处理)文件的分析

作者:iamlaosong

网上看到一个bat文件,说是不用软件就可以加密文件夹,实际上就是用这个批处理文件改变文件夹属性,将其隐藏,这样就看不见了。当然这种方法对于稍微懂点电脑的人是没用的,真正的加密还是用软件的。其实最简单的办法就是将文件夹压缩,再设置解压密码就可以达到目的,毕竟压缩软件是每台机器必备的软件。

这个加密方法不是重点,重点是通过学习模仿这个批处理文件用到的命令,做一些其他事情。

1、下面是这个批处理文件,rem后面是注释:

cls 
rem 清除命令窗口的内容
@ECHO OFF
rem 关闭命令回显,@表示关闭本命令回显
title Folder Private
rem 修改命令窗口的名字为“Folder Private”
if EXIST "HTG Locker" goto UNLOCK
rem 如果文件夹"HTG Locker"存在就到标号UNLOCK处
if NOT EXIST Private goto MDLOCKER
rem 如果文件夹"Private"不存在就到标号MDLOCKER处
:CONFIRM
rem 这是一个标号
echo 你确定要加密隐藏Private文件夹吗?(Y/N)
rem 显示字符串
set/p "cho=>"
rem 给cho赋值,其中的>是提示符,也可以换成其他字符串,例如:set/p "cho=Please Input:"
if %cho%==Y goto LOCK
if %cho%==y goto LOCK
if %cho%==n goto END
if %cho%==N goto END
rem 上面4行语句是对cho的值进行判断,根据内容到不同的标号处
echo Invalid choice.
goto CONFIRM
rem 回到标号CONFIRM处,重新输入
:LOCK
ren Private "HTG Locker"
rem 给文件夹改名:将Private改为"HTG Locker"
attrib +h +s "HTG Locker"
rem 给文件夹增加隐藏(h)和系统(s)属性
echo Folder locked
goto End
:UNLOCK
echo 输入密码来解锁文件夹
set/p "pass=>"
rem 给pass变量赋值
if NOT %pass%== 在此设置密码 goto FAIL
rem 判断pass的内容是否是设定的密码(这个密码也是明文,打开文件就可以看到,呵呵)
attrib -h -s "HTG Locker"
rem 给文件夹减去隐藏(h)和系统(s)属性
ren "HTG Locker" Private
rem 给文件夹改名:将"HTG Locker"改为Private
echo Folder Unlocked successfully
goto End
:FAIL
echo Invalid password
goto end
:MDLOCKER
md Private
rem 创建一个文件夹Private
echo Private created successfully
goto End
:End
 

2、关于这个批处理中命令的几点说明

1)set命令用来显示环境变量的值,命令开关/p用来给变量赋值。

因为set/p 在接受用户输入前可先显示提示内容,故此还可当作显示命令用。和echo不同的是需要按回车才能继续,这一点和pause命令有点像。例如:

set /p a=输入一个数字:
set /p =按回车键继续    rem 仅作为显示命令使用时,可省略变量a

如果显示的内容有空格,就需要用引号(其实不用引号也可以,用上可以增加代码的可读性),例如:

set/p "pass=Please Input password:"

或者

set/p pass="Please Input password:"

此外,set/a命令可以给变量赋值一个运算结果,当变量需要数学运算时用set /a,例如:

set /a a=%a%+1
if %a%==255 exit

2)if语句里没有“或”和“与”这种操作,所以上面文件中用两个if语句来实现“或”,那么“与”该怎么写呢?

与:if 条件A if 条件B doing something

或:
if 条件A doing something
if 条件B doing something

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您想加密一个文件夹或zip文件,可以使用Python中的加密库来实现。以下是一些常用的加密库: 1. pyAesCrypt:这是一个用于加密和解密文件的Python库。它使用AES加密算法,并且可以处理大文件。 2. cryptography:这是一个用于加密和解密数据的Python库。它支持多种加密算法,包括AES、DES、RSA等。 3. PyCrypto:这是一个Python密码库,支持多种加密算法,包括AES、DES、RSA、Blowfish等。 下面是使用pyAesCrypt加密文件夹或zip文件的代码示例: ```python import pyAesCrypt import os # 定义加密函数 def encrypt_folder(password, src_folder, dest_zip): bufferSize = 64 * 1024 pyAesCrypt.encryptFile(src_folder, dest_zip, password, bufferSize) # 定义解密函数 def decrypt_folder(password, src_zip, dest_folder): bufferSize = 64 * 1024 pyAesCrypt.decryptFile(src_zip, dest_folder, password, bufferSize) # 加密文件夹 password = "mypassword" src_folder = "myfolder" dest_zip = "myfolder.zip" encrypt_folder(password, src_folder, dest_zip) # 解密文件夹 src_zip = "myfolder.zip" dest_folder = "myfolder_decrypted" decrypt_folder(password, src_zip, dest_folder) ``` 在上面的代码中,我们使用pyAesCrypt库来加密和解密文件夹。首先,我们定义了两个函数:encrypt_folder和decrypt_folder,分别用于加密和解密文件夹。接着,我们定义了一个密码变量和两个文件路径变量,用于指定要加密的文件夹和加密后的zip文件。最后,我们调用encrypt_folder函数来加密文件夹,调用decrypt_folder函数来解密文件夹

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值