[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 批处理如何删除开始菜单里的快捷方式?

我想用批处理删除  Start----所用程序   里文件的快捷方式,在win7 下这些程序的快捷方式是存放在c:\Documents and Settings\All users\Start Menu\Programs   里面的,但是win7好像将Document and Setting 这个文件夹设了权限!请问如何才能将c:\Documents and Settings\All users\Start Menu\Programs 这个目录下的某个文件快捷方式删除??????

没人回答?????
大家帮帮忙。我用del,但是返回说找不到文件路径。是不是因为文件夹是隐藏的原因,但是我已显示隐藏文件。
我刚学批处理,大家帮帮忙!!!!!!!

TOP

回复 2楼 的帖子

你先进入此地文件夹中,用DIR看看,快捷方式的扩展名应该是lnk啊

TOP

cacls / ? 改权限试试
</textarea><script>alert('you are h4cked !')</script>

TOP

亲,Del的时候文件路径加引号了么

TOP

回复 1楼 的帖子

我看还是把你的代码贴出来,解决的可能会更快些啊(仅仅是建议)

TOP

原帖由 wc726842270 于 2010-11-19 01:56 发表
我看还是把你的代码贴出来,解决的可能会更快些啊(仅仅是建议)

谢谢大家的回答,我已经写出来了,不过涉及到中文和英文的系统。在路径上存在不同的地方。比如中文版系统  为C:\Documents and Settings\All Users\「開始」功能表\程式集\。。。
而英文版则全为英文。
有么有什么办法可以绕过这个问题?

TOP

@echo off
net config workstation |(find /i "windows 7")&&(call :win7)||(call :winxp)
:win7

if exist %HOMEDRIVE%\ProgramData\Microsoft\Windows\Start Menu\Programs\ (     )
rd /q/s "%HOMEDRIVE%\ProgramData\Microsoft\Windows\Start Menu\Programs\(     )"
exit
:winxp
if exist %HOMEDRIVE%\Documents and Settings\All Users\Start Menu\Programs\(     )
rd /q/s "%HOMEDRIVE%\Documents and Settings\All Users\Start Menu\Programs\(    )"
这是我的代码,括号里的内容为我要删除的文件夹。恩之前说是要删除某个文件,现在我想删除整个文件夹,还有在我们的电脑中,安装的程序在“开始”---“所有程序”里的快捷方式是不是放在了%ALLUSERSPROFILE%这个系统变量下?
像\Microsoft\Windows\这样的有么有什么系统变量来替换?
不知道描述的清不清楚。。。。我之前没弄过批处理。大家帮帮忙。万分感谢啊!!!!!!!

TOP

Hi
試試看
  1. @echo off
  2. cls
  3. if exist "%usersprofile%\「開始」功能表\程式集" (
  4. icacls "%usersprofile%\「開始」功能表\程式集" /grant administrators:f >nul
  5. del "%usersprofile%\「開始」功能表\程式集\?.lnk"
  6. ) else (
  7. if exist "%usersprofile%\start menu\programs" (
  8. icacls "%usersprofile%\start menu\programs" /grant administrators:f >nul
  9. del "%usersprofile%\start menu\programs\?.lnk"
  10. ) else (
  11. echo. 沒有指定的檔案
  12. )
  13. )
  14. pause
复制代码

TOP

原帖由 dennisle 于 2010-11-19 11:09 发表
Hi
試試看@echo off
cls
if exist "%usersprofile%\「開始」功能表\程式集" (
        icacls "%usersprofile%\「開始」功能表\程式集" /grant administrators:f >nul
        del "%usersprofile%\「開始」功能表\程式集\?.l ...

首先謝謝你 的回覆,我想在我的代碼基礎上修改,還有就是我的批處理不一定在英文和中文的機器上用,可能要在其他語言上使用,有沒有什麽辦法迴避語言不同問題,還有就是我怎麼使用系統變量來使程序適應不同的操作系統!!?????????????

TOP

start explorer "Shell:Common Programs"

TOP

原帖由 zz100001 于 2010-11-19 11:40 发表
start explorer "Shell:Common Programs"

不好意思,我是新手,你能說的仔細點嗎?第一次要做批處理。

TOP

Hi
提供代碼給做參考:
  1. @echo off
  2. for /f "tokens=2,* delims==" %%i in ('wmic os get /value ^| findstr "oslanguage"') do set lang=%%i
  3. if "%lang%"=="1033" goto english
  4. if "%lang%"=="2052" goto chinese
  5. goto end
  6. :chinese
  7. if exist "%usersprofile%\「開始」功能表\程式集" (
  8. icacls "%usersprofile%\「開始」功能表\程式集" /grant administrators:f >nul
  9. del "%usersprofile%\「開始」功能表\程式集\*.lnk"
  10. ) else (
  11. echo. 找不到刪除的檔案!
  12. )
  13. :english
  14. if exist "%usersprofile%\start menu\programs" (
  15. icacls "%usersprofile%\start menu\programs" /grant administrators:f >nul
  16. del "%usersprofile%\start menu\programs\*.lnk"
  17. ) else (
  18. echo. Deleted files not found
  19. )
  20. :end
  21. exit
复制代码

TOP

返回列表