作者jbear79810 (J熊)
看板EzHotKey
标题[请问] 如何使BAT内的日期抓的是前一营业日
时间Sat Apr 18 22:05:23 2015
感谢之前网路上大大们的协助
我先贴上千辛万苦东问西问凑出的程式档
档名为TEST.BAT测试後可跑
是一个搭配WINDOWS工作排程後就可自动列印每日资料夹里PDF的程式
程式码如下:
@echo off
set MYDATE=%1
if "%MYDATE%"=="" set MYDATE=%date:~0,4%%date:~5,2%%date:~8,2%
set FILELIST=%2
if "%FILELIST%"=="" set FILELIST=file.txt
if NOT EXIST %FILELIST% (echo %FILELIST% 不存在 & goto end)
set PRINTER="wer"
set TARGETPATH="C:\Users\123\Desktop\%MYDATE%"
-----------------------------------------------------
先想问关於%MYDATE%这边的设计都是抓当日的日期
有办法让这日期改抓的是营业日(中华民国行事历上的上班日)
而且我要抓的是"前一营业日"
也就是说 假设今天20150413(一)上班 但我要抓出来列印时间点是要20150410(五)
又或是20150504(一)上班 因劳动节连假所以抓前一营业日应是20150430(四)
我个人能力不强 也有GOOGLE 想破头也想不出要怎麽改
这边再补充叙述
简单来讲我20150413(一)上班时
电脑共用资料夹中会有20150413的资料夹 我需要列印此资料夹里特定PDF档
当然共用资料夹会存在着过往的 包含20150101~20150413的资料夹
因为昨天工作结束後产生的报表会放在前一营业日的资料夹中
所以我还需要加印前一营业日的20150410(五)资料夹中的特定PDF档
我现在都是设定两个bat档
一个按一下就会自动列印今天资料夹中的pdf
另一个就进去把C:\Users\123\Desktop\%MYDATE%
改成C:\Users\123\Desktop\20150410在储存後再按列印
但就变成每天我都要手动进去改然後列印前一营业日的档案.....
这样当初设计想要自动化就有点瑕疵存在了....
--------------------------------------------------------------------
for /F %%f in ('type %FILELIST%') do (
for /R %TARGETPATH% %%i in (%%f.pdf) do (
if EXIST %%i call start /min /wait /D"C:\Program Files\bioPDF\Acrobat
Wrapper" acrowrap.exe /acceptlicense /t %%i %PRINTER%
)
)
:end
希望各路程式高手们能帮我解惑或提点
感激不尽!!!!!!!!!!!!!!!!!!!!!!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.171.76.115
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/EzHotKey/M.1429365925.A.2D0.html
※ jbear79810:转录至看板 Programming 04/18 22:06
※ 编辑: jbear79810 (1.171.76.115), 04/18/2015 22:59:28