本帖最后由 2468567855 于 2024-7-24 16:14 编辑
本批处理脚本用于取消指定文件夹的共享设置。用户可以输入要取消共享的文件夹路径,脚本会提取该文件夹的名称作为共享名,并请求用户确认是否取消共享。
使用方法- 运行脚本:
- 输入文件夹路径:
- 在提示处输入要取消共享的文件夹的完整路径。例如:C:\MyFolder\ABC\CBA\AAA。
- 确认取消共享:
- 脚本会显示提取的共享名,并询问用户是否确认取消共享。
- 输入 y 确认取消共享,输入 n 取消操作。
- 完成操作:
- 根据用户的选择,脚本会尝试取消共享。
- 如果成功取消共享,会显示成功消息;否则会显示错误消息。
示例
假设要取消共享路径为 C:\MyFolder\ABC\CBA\AAA 的文件夹,执行脚本后的交互如下:
请输入要取消共享的文件夹完整路径 (例如 C:\MyFolder\ABC\CBA\AAA): C:\MyFolder\ABC\CBA\AAA
您确定要取消 'AAA' 的共享吗?(y/n): y
正在取消共享 'AAA'...
'AAA' 的共享已成功取消。
Press any key to continue . . .
注意事项- 确保脚本运行时具有管理员权限,否则无法取消共享。
- 输入的文件夹路径必须是有效的本地路径。
脚本代码
[color=var(--TY-Text-2)]1 @echo off[color=var(--TY-Text-2)]2 chcp 65001 >nul[color=var(--TY-Text-2)]3 setlocal enabledelayedexpansion[color=var(--TY-Text-2)]4 [color=var(--TY-Text-2)]5 :: Prompt the user to input the folder path to stop sharing[color=var(--TY-Text-2)]6 set "folderPath="[color=var(--TY-Text-2)]7 set /p "folderPath=请输入要取消共享的文件夹完整路径 (例如 C:\MyFolder\ABC\CBA\AAA): "[color=var(--TY-Text-2)]8 [color=var(--TY-Text-2)]9 :: Initialize the share name variable[color=var(--TY-Text-2)]10 set "shareName="[color=var(--TY-Text-2)]11 [color=var(--TY-Text-2)]12 :: Find the last backslash and extract the last directory name[color=var(--TY-Text-2)]13 for %%A in ("%folderPath%") do ([color=var(--TY-Text-2)]14 set "shareName=%%~nxA"[color=var(--TY-Text-2)]15 )[color=var(--TY-Text-2)]16 [color=var(--TY-Text-2)]17 :: Ask for confirmation before unsharing[color=var(--TY-Text-2)]18 set /p "confirm=您确定要取消 '!shareName!' 的共享吗?(y/n): "[color=var(--TY-Text-2)]19 [color=var(--TY-Text-2)]20 if /i "%confirm%"=="y" ([color=var(--TY-Text-2)]21 echo 正在取消共享 '!shareName!'...[color=var(--TY-Text-2)]22 net share "!shareName!" /delete >nul 2>&1[color=var(--TY-Text-2)]23 if not errorlevel 1 ([color=var(--TY-Text-2)]24 echo '!shareName!' 的共享已成功取消。[color=var(--TY-Text-2)]25 ) else ([color=var(--TY-Text-2)]26 echo 错误:无法取消共享 '!shareName!'。[color=var(--TY-Text-2)]27 )[color=var(--TY-Text-2)]28 ) else ([color=var(--TY-Text-2)]29 echo 已取消目前操作。[color=var(--TY-Text-2)]30 )[color=var(--TY-Text-2)]31 [color=var(--TY-Text-2)]32 pause[color=var(--TY-Text-2)]33 exit /b
一键设置文件夹共享的可以看我上一篇:https://www.52pojie.cn/thread-1945510-1-1.html
另外附上一个查看当前局域网用户和本机计算机IP及计算机名称的脚本
脚本代码
[color=var(--TY-Text-2)]1 @echo off[color=var(--TY-Text-2)]2 chcp 65001 >nul[color=var(--TY-Text-2)]3 setlocal enabledelayedexpansion[color=var(--TY-Text-2)]4 [color=var(--TY-Text-2)]5 echo.[color=var(--TY-Text-2)]6 echo 当前局域网用户:[color=var(--TY-Text-2)]7 arp -a[color=var(--TY-Text-2)]8 echo.[color=var(--TY-Text-2)]9 [color=var(--TY-Text-2)]10 echo 当前用户的IP及计算机名称:[color=var(--TY-Text-2)]11 [color=var(--TY-Text-2)]12 rem 获取本机IP地址[color=var(--TY-Text-2)]13 for /f "tokens=2 delims=:" %%a in ('ipconfig ^| findstr /c:"IPv4"') do ([color=var(--TY-Text-2)]14 set ip=%%a[color=var(--TY-Text-2)]15 set ip=!ip:~1![color=var(--TY-Text-2)]16 [color=var(--TY-Text-2)]17 rem 使用 ping 命令获取IP地址对应的计算机名称[color=var(--TY-Text-2)]18 for /f "tokens=2 delims=: " %%i in ('ping -a !ip! -n 1 ^| findstr /i "Pinging"') do ([color=var(--TY-Text-2)]19 rem 去掉首尾空格[color=var(--TY-Text-2)]20 set name=%%i[color=var(--TY-Text-2)]21 set name=!name:~1,-1![color=var(--TY-Text-2)]22 echo IP: !ip! 计算机名称: !name![color=var(--TY-Text-2)]23 )[color=var(--TY-Text-2)]24 )[color=var(--TY-Text-2)]25 echo.[color=var(--TY-Text-2)]26 pause[color=var(--TY-Text-2)]27 exit /b
|