Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何删除带有批处理文件的文件夹?_Batch File - Fatal编程技术网

Batch file 如何删除带有批处理文件的文件夹?

Batch file 如何删除带有批处理文件的文件夹?,batch-file,Batch File,若我使用Turbostudio构建了一个便携式文件,并在以后使用它,那个么在主机上创建的两个文件夹应该使用批处理文件删除。以下是两个文件夹: C:\Users\XXXXX\AppData\Local\Turbo.net C:\Users\XXXXX\AppData\Local\Temp\SPOON 在SPOON中,将另外创建子文件夹CACHE 我在matt中找到一个正在处理临时文件夹的代码: @echo off :: BatchGotAdmin (Run as Admin code start

若我使用Turbostudio构建了一个便携式文件,并在以后使用它,那个么在主机上创建的两个文件夹应该使用批处理文件删除。以下是两个文件夹:

C:\Users\XXXXX\AppData\Local\Turbo.net
C:\Users\XXXXX\AppData\Local\Temp\SPOON
SPOON
中,将另外创建子文件夹
CACHE

我在matt中找到一个正在处理临时文件夹的代码:

@echo off
:: BatchGotAdmin (Run as Admin code starts)

REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> "%temp%\getadmin.vbs"

"%temp%\getadmin.vbs"
exit /B

:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
pushd "%CD%"
CD /D "%~dp0"

:: BatchGotAdmin (Run as Admin code ends)
:: Your codes should start from the following line
@echo off
cd %temp%
rd /S /Q %temp%

但是如何删除
Local
中的
Turbo.net
文件夹?

如果要删除当前用户的文件夹,只需使用用户环境即可。要获取有关环境的信息,请打开
cmd.exe
run
set
将每个环境变量定义为一个名称,后跟一个值,即

APPDATA=C:\Users\USER123\AppData\Roaming
CommonProgramFiles=C:\Program Files\Common Files
LOCALAPPDATA=C:\Users\USER123\AppData\Local
要批量使用变量,只需将其名称包装在
%
中即可获得值。因此,要删除您的
Turbo.net
文件夹,只需在脚本底部添加这一行即可

rd /S /Q "%LOCALAPPDATA%\Turbo.net"
与临时文件目录完全相同,临时文件目录也应包含在双引号中,并应附加
SPOON

rd /S /Q "%TEMP%\SPOON"
如果执行
set
,您会看到
temp=
被定义为变量。您只需执行
echo%temp%
echo%localappdata%
即可查看每一项的值

要更改文件夹的属性,请使用命令
attrib

您可以决定要更改哪些属性,但作为提示,请从cmd运行
attrib/?
,以查看帮助

例如:

attrib -H "%localappdata%\Turbo.net"

此命令行将删除文件夹的隐藏属性,而
+H
将在其中添加该属性。

阅读有关预定义属性的信息,如
LOCALAPPDATA
TEMP
,打开命令提示符窗口并运行
rd/?
,以获取有关删除目录命令的帮助信息。删除
%LOCALAPPDATA%
%TEMP%
中的目录时,不需要使用本地管理员提升权限运行批处理文件的完整代码,除了批处理文件应该在Windows机器上删除所有用户帐户之外,顺便说一下:C和C++具有删除文件和文件夹并更改属性的库函数。由应用程序创建的临时文件和文件夹也应在退出前由便携应用程序删除,而不使用批处理文件。请参见中的文件相关函数示例。在堆栈溢出上,有许多代码段用于C和C++的属性或更改属性。