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

[文本处理] BAT批处理如何提取包含括号的文件夹路径?

本帖最后由 chejh 于 2014-3-28 15:43 编辑
  1. for /f "delims=" %%c in ('forfiles /p %log_dir% /s /m %ys%.log /c "cmd /c for /f %%i in (@path) do @echo %%~pi"') do (echo %%c)>>%tmp%\douyou_filepath.txt
复制代码
这段是文件路径截,截取效果如下:
\webroot\新浪狼\logger\20140319\
\webroot\百度度\logger\20140319\
\webroot\结算嵌入\logger\20140319\
如:
\webroot\新浪浪(嵌入站点)\logger\20140319\
   有个文件夹的名字后面中间有括号就截取不了,我要怎么把这个括号取消或者提取出来,现在是提取不到上面这个文件夹,也就是没有上面一段

  1. for /f "delims=" %%i in ('dir /b /s %ys%.log') do (echo %%~pi)>%tmp%\douyou_filepath.txt
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

我在2003系统,测试可以提取包含有()的路径
https://www.likunyan.com

TOP

回复 3# lky216


    关键是确实提取不了啊

TOP

回复 2# Batcher


    这个没有路径啊,你的截图的路径没了

TOP

回复 5# chejh


    把2楼代码生成的douyou_filepath.txt的内容发出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 4# chejh


    你用的什么操作系统?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

你给我的这段代码什么东西都没有啊

TOP

回复 7# Batcher


    2003和2008啊

TOP

回复 6# Batcher


    没有生成这个文件

TOP

错了问错问题了,我一会儿重新黏贴一下我的问题·

TOP

%ys%这个变量是在哪里定义的?把完整代码发出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 12# Batcher


    这就是我叫你优化的那个时间代码·

TOP

本帖最后由 chejh 于 2014-3-28 15:43 编辑

rem 路径截取
for /f "delims=" %%c in ('forfiles /p %log_dir% /s /m %ys%.log /c "cmd /c for /f %%i in (@path) do @echo %%~pi"') do (echo %%c)>>%tmp%\douyou_filepath.txt

结果
\webroot\新浪浪\logger\20140319\
\webroot\百度度\logger\20140319\
\webroot\结算嵌入\logger\20140319\
\webroot\新浪浪(嵌入站点)\logger\20140319\
上面代码提取的路径,之后我要怎么在ftp里面创建此文件件 兜有院线通(嵌入站点) 的文件夹,不要括号也可以·
rem ftp上创建目录,上传打包日志
for /f "tokens=1,2,3,4 delims=\" %%e in (%tmp%\douyou_filepath.txt) do (
echo mkdir %%f
echo mkdir %%f\%ip%
echo mkdir %%f\%ip%\%%h
%rar_dir% a -ep1 -inul %tmp%\douyou_%ys%.rar %log_dir%\%%f\%%g\%%h\%ys%.log
echo put %tmp%\douyou_%ys%.rar %%f\%ip%\%%h\%ys%.rar
)>>%tmp%\douyou_ftp.txt
  其中%%f就第二个字段的截图,兜有院线通(嵌入站点),上面的变量貌似不支持创建()类似的目录,
思想1要么截取的时候取消(),思路2要么使用参数在ftp上面创建带()的目录(目前不知道)

TOP

%log_dir%
%ys%
这些变量是在哪里定义的?
完整代码不方面发出来吗?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表