Board logo

标题: [文件操作] 批处理命令语法不正确求助 [打印本页]

作者: bukubuku    时间: 2020-10-10 08:47     标题: 批处理命令语法不正确求助

之前借鉴高手的经验,自己编了一个批处理,用途是将目录下的xlsx文件放入同名二级目录下然后单独压缩各个二级目录,第一次用的时候好好地,但是现在突然不能用了,提示“命令语法不正确”。
请帮忙看看是什么问题?
谢谢。
  1. @echo off
  2. path "C:\Program Files\WinRAR\";%path%
  3. for /f "delims=" %%a in ('dir /b *.xlsx') do (
  4.     if exist "%%~na"
  5.        (move "%%a" "%%~na"
  6.         winrar a -ep1 -r "%%~na".rar "%%~na")
  7.     else(md "%%~na"
  8.         move "%%a" "%%~na")
  9. )
  10. pause
  11. for /f "delims=" %%a in ('dir /b ') do (
  12.     if exist "%%~na" winrar a -ep1 -r "%%~na".rar "%%~na")
  13. pause
复制代码

作者: Batcher    时间: 2020-10-10 11:32

回复 1# bukubuku


请参考Q-01观察一下哪行代码在报错:
https://mp.weixin.qq.com/s/6lbb97qUOs1sTyKJfN0ZEQ
作者: bukubuku    时间: 2020-10-10 14:31

回复 2# Batcher



去掉echo off执行以后提示是这样的,但是这个path我在其他批处理中刚用过没问题的呀

D:\ETC\TxfFPop\5-categorize>path "C:\Program Files\WinRAR\";C:\Program Files\Ima
geMagick-7.0.10-Q16-HDRI;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
;C:\Windows\System32\WindowsPowerShell\v1.0\;D:\Anaconda3;D:\Anaconda3\scripts;C
:\Program Files (x86)\HP\Common\HPDestPlgIn\;C:\Program Files (x86)\HP\IdrsOCR_1
5.3.1129.0\;C:\Program Files\Tesseract-OCR;C:\Program Files (x86)\PDFtk\bin\;C:\
Program Files (x86)\HP\Common\HPDestPlgIn\
命令语法不正确。

D:\ETC\TxfFPop\5-categorize>    if exist "%~na"

作者: Batcher    时间: 2020-10-10 16:36

回复 3# bukubuku
  1. @echo off
  2. set "path=C:\Program Files\WinRAR\;%path%"
  3. for /f "delims=" %%a in ('dir /b /a-d *.xlsx') do (
  4.     if exist "%%~na" (
  5.         move "%%a" "%%~na"
  6.         winrar a -ep1 -r "%%~na".rar "%%~na"
  7.     ) else (
  8.         md "%%~na"
  9.         move "%%a" "%%~na"
  10.     )
  11. )
复制代码
参考 if 命令教程:
http://bbs.bathome.net/thread-31727-1-1.html
作者: bukubuku    时间: 2020-10-16 08:03

回复 4# Batcher


    谢谢您




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2