問題內容:
因為工作需要. 每月須要執行45個相同格式的.txt檔(即45次)
檔案由別單位按月提供, 格式為文字檔, 第1列為欄名, 第2列起為資料列約300~500列(不固定列數, 但所有資料皆依時間由小至大排列),
每個檔案每次需要做以下動作
* 保留第1列, 以及檔案最後4列(最近4期資料), 其他列刪除.
* 另存該檔案
請問一下批次檔如何寫? (假設原始檔案 file01.txt, file02.txt, ..., file45.txt)
請教高手..
檔案由別單位按月提供, 格式為文字檔, 第1列為欄名, 第2列起為資料列約300~500列(不固定列數, 但所有資料皆依時間由小至大排列),
每個檔案每次需要做以下動作
* 保留第1列, 以及檔案最後4列(最近4期資料), 其他列刪除.
* 另存該檔案
請問一下批次檔如何寫? (假設原始檔案 file01.txt, file02.txt, ..., file45.txt)
請教高手..
問題答案:
擔心複製後貼上會出錯?可以直接下載已寫好的檔案,請到這裡下載,(如何下載:請參考這裡)
使用方法:
[NextMonth.cmd]
補充說明:
「head.exe」、「tail.exe」原本是 unix 上的指令,現在有善心人士把它們移植到 Windows 平台上,您可以在「NextMonth.zip」中找到,或者到這下載:http://sourceforge.net/projects/unxutils/
使用方法:
NextMonth c:\2009-11 c:\2009-12
[NextMonth.cmd]
@echo off
setLocal ENABLEEXTENSIONS
if $%1$ == $$ goto showUsage
if $%2$ == $$ goto showUsage
if not exist %1 (
dir /b %1
echo.
goto showUsage
)
if not exist %2 md %2
for %%F in (%1\*.txt) do (
head -1 %%F > %2\%%~nxF
tail -4 %%F >> %2\%%~nxF
)
goto end
:showUsage
echo Create Next Month Report
echo =====================================================================================
echo Usage:
echo.
echo %0 [drive:]this_month_report_path [drive:]next_month_report_path
echo.
:end
endlocal
補充說明:
「head.exe」、「tail.exe」原本是 unix 上的指令,現在有善心人士把它們移植到 Windows 平台上,您可以在「NextMonth.zip」中找到,或者到這下載:http://sourceforge.net/projects/unxutils/