쉬운 것이어야합니다. 나는 일하는 배치를 만들었지 만 과도하게 긴 문장이 포함되어 있다고 생각합니다. 나는 대괄호로 놀아야 만했지만, 내가 무엇을하고 있었는지 이해하지 못한다는 것을 매우 빨리 깨달았다. 모든 팁이 우수 할 것입니다.배치 파일에 긴 코드 줄을 사용하지 마십시오
여기에 코드
IF "%deletetype%" == "prompt" (for /d /r "C:\Users" %%a in (*Folder*) do if exist "%%a" rmdir /s "%%a") ELSE (for /d /r "C:\Users" %%a in (*Folder*) do if exist "%%a" rmdir /s /q "%%a")
IF "%deletetype%" == "prompt" (for /d /r "C:\Documents and Settings" %%a in (*Folder*) do if exist "%%a" rmdir /s "%%a") ELSE (for /d /r "C:\Documents and Settings" %%a in (*Folder*) do if exist "%%a" rmdir /s /q "%%a")
당신이 너무 오래 보인다 볼 수 있듯이에게 있습니다 최대한 빨리 다른 곳으로 이동하거나 브라켓은, 코드 나누기 내가 붙어있다. 을 작은 덩어리로 분해하려면 어떻게해야합니까? 고맙습니다!
모든 도움을 주셔서 감사합니다. 나는 이것을 짧게 할 수있는 다른 문장에도 적용 할 수 있을지 궁금해하고 있었다. 나는 아래 라인으로 시도했지만 나는 다시 내 깊이에서 벗어났다. 나는 당신이 그것을 할 수 없다면 궁금해. (실패한 경우 실행) & & (성공시 실행) 문자? 어쩌면 다른 컨디셔너를 사용할 것입니까?
msiexec.exe /norestart /qn /x {3EBE26E0-8630-4351-B18F-06AB4067AC49} || Echo Driver Already Removed or Not Exist! && (pause) && If "%drvtype%" == "grundig" (goto drivers)
감사합니다.
msiexec.exe /norestart /qn /x {07A1C1F1-52A2-49F4-A413-FF9A4FC3EDB6} || (
Echo Olympus Driver Already Removed or Not Exist! Press Space Bar to Continue
) && pause>nul && (If "%drvtype%" == "olympus" (goto drivers)
)
)
완벽하게 작동합니다. 감사합니다. 이해의 요점과 같이 괄호로 IF 문을 같은 행에서 생각하도록 만들지 만 실제로는 그렇지 않습니다. – Tika9o9
"논리적 인 라인"이라고 생각하십시오. 'cmd' 파서는 그것을 실제로 하나의 행으로 취급합니다. – Stephan