当前位置:首页 » 文件管理 » 压缩批处理

压缩批处理

发布时间: 2023-12-15 04:48:53

① 如何写一个压缩文件的批处理或小程序

不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行

<#:
cls&echooff&cd/d"%~dp0"&modeconlines=5000
rem将当前目录里的多个.vcf文件按照不同数量分组进行压缩打包
set#=Anyquestion&set_=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%_%%z%
set"exefile=C:ProgramFilesWinRARWinRAR.exe"
ifnotexist"%exefile%"(echo;"%exefile%"PathErrororNotInstalled&pause&exit)
set"self=%~f0"
powershell-NoProfile-ExecutionPolicybypass"Get-Content-literal'%~f0'|Out-String|Invoke-Expression"
echo;%#%+%$%%$%/%_%%z%
pause
exit
#>
$ext=@(".vcf");

$relation=@"
小红=20
小兰=30
小刚=33
小李=22
"@;

$codes=@'
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Runtime.InteropServices;
publicstaticclassExpDir
{
[DllImport("Shlwapi.dll",CharSet=CharSet.Unicode)]
(stringp1,stringp2);
publicstaticstring[]Sort(string[]f)
{
Array.Sort(f,StrCmpLogicalW);
returnf;
}
}
'@;
Add-Type-TypeDefinition$codes;

$self=get-item-liter$env:self-force;
$current=$self.Directory;
$arr=$relation.trim()-split'[ ]+';
$files=@(dir-literal$current.FullName|?{($ext-contains$_.Extension)-and($_-is[System.IO.FileInfo])}|%{$_.Name});
if($files.length-ge1){
$brr=[ExpDir]::Sort($files);$n=0;
for($i=0;$i-lt$arr.length;$i++){
if(-not[string]::IsNullOrWhiteSpace($arr[$i])){
$crr=$arr[$i].split('=',2);$zipname=$crr[0]+'.zip';
for($j=1;$j-le([int]$crr[1]);$j++){
if($n-lt$brr.count){
write-host$brr[$n];$n++;
}
}
write-host("==>"+$zipname+"`r`n")-ForegroundColoryellow;
}
}
}

② 批处理 解压文件夹内所有压缩包至每个单独的文件夹

如果使用WINRAR进行解压,其本身就自带此功能,在资源管理器中选中所有压缩文档,右击出现右键菜单,再选择“解压每个包到单独文件”即可。
如果一定要批处理命令,则可查看WINRAR的帮助文件,里边会有命令行格式的注解。
如果文件在不同文件夹中,可先搜索该上级文件夹下的所有“*.RAR”文件,再按上述方法操作。

③ 怎么用批处理解压压缩包到当前文件夹中

是利用winrar自带的一个命令行工具rar.exe来完成的
这个程序的命令行参数很丰富
直接在命令行输入"c:\program files\winrar\rar.exe"(假如你的rar是装在默认位置的话)

下面的批处理程序以一堆冒号为分界,分为三段

第一段,根据.rar文件的文件关联找到rar的安装目录
这里用到了ftype命令
在命令行中输入ftype就可以查看所有的文件关联信息
这里我们只关注Winrar
所以辅助了一个通道命令|find找到winrar所在的行

然后调用了一个叫做:getrarpath的子程序
这个子程序在第三段做了定义
它将path变量暂时设成了winrar的安装目录
path变量有什么用呢?当你输入一个程序名,没有路径时,系统会在当前路径和path指定的文件夹下寻找
这样我们输入rar.exe,系统就会自动在当前目录和C:\program files\winrar\下寻找rar.exe。这么写纯粹是为了用起来方便

第二段只有一句话
用到了rar.exe的e参数,即解压。可以指定路径,如
rar e d:\bc\ed.rar d:\test\
不指定的话则解压到当前目录

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off
setlocal
for /f "delims== tokens=1,*" %%a in ('ftype^|find /i "winrar="') do call:getrarpath %%b
if not exist "%path%\rar.exe" echo 找不到WinRAR&exit /b
::根据.rar的文件关联查找rar所在的路径

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

rar e d:\bc\ed.rar
::解压d:\bc\ed.rar到当前目录。当前目录指的是cmd的工作目录

exit /b

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:getrarpath
::将工作路径path设为winrar所在目录
path %~dp1
exit /b

④ 如何用批处理将一个文件压缩并加密

用批处理将一个文件压缩并加密码的方法如下:
1、创建一个txt格式的文档,然后打开。
2、将以下代码复制到上面。
cls

@ECHO OFF

title 加密程序

if EXIST "上了锁的文件夹" goto UNLOCK

if NOT EXIST 加密文件 goto MDLOCKER

:CONFIRM

echo 您确定要锁定文件夹吗?(Y/N)‘Y=是-N=不’

set/p "cho=(more than)"

if %cho%==Y goto LOCK

if %cho%==y goto LOCK

if %cho%==n goto END

if %cho%==N goto END

echo 选择无效.

goto CONFIRM

:LOCK

ren 加密文件 "上了锁的文件夹"

attrib +h +s "上了锁的文件夹"

echo 文件夹已锁定

goto End

:UNLOCK

echo 请输入密码打开文件夹

set/p "pass=(more than)"

if NOT %pass%== (此处输入密码) goto FAIL

attrib -h -s "上了锁的文件夹"

ren "上了锁的文件夹" 加密文件

echo 文件夹解锁成功

goto End

:FAIL

echo 密码无效

goto end

:MDLOCKER

md 加密文件

echo 加密文件 成功创建

goto End

:End

3、这时候要设密码了,找到代码中    (此处输入密码)       ,连扩号一起改成自己的密码。再点左上角文件,然后在点另存为,把文件名的后缀名改成  .bat  前面的自己设,再将保存类型改成所有文件。
4、运行bat文件(批处理文件),然后这时候会冒出个叫“加密文件”的文件夹,现在就可以把私密文件放入这个文件夹里了,然后再次运行这个批处理文件,见图2,点Y,然后按Enter回车键运行,然后文件不见了。
5、再次运行批处理文件,输入密码,然后文件夹又回来了。又可以再次使用或修改加密文件里的私密文件了。
6、这样就加密成功了,要重新隐藏(锁定)的话,就再次执行上面的步骤。

热点内容
刷新器需要什么配置 发布:2025-01-21 11:09:28 浏览:971
jedis源码 发布:2025-01-21 11:08:24 浏览:889
edm数据库 发布:2025-01-21 11:05:54 浏览:370
QQ咋样加密 发布:2025-01-21 11:05:45 浏览:163
红帽服务器的默认地址 发布:2025-01-21 11:04:15 浏览:980
编程中重命名 发布:2025-01-21 10:49:47 浏览:302
sqltuning 发布:2025-01-21 10:48:27 浏览:264
安卓怎么删除桌面 发布:2025-01-21 10:47:56 浏览:104
sc服务器ip什么意思 发布:2025-01-21 10:43:42 浏览:913
python中文网 发布:2025-01-21 10:43:35 浏览:286