我在一个文件夹中有数百个csv文件,有9列,其中我想删除所有文件的最后8列和第1行。
文件看起来像
此外,我不确定是否可以覆盖编辑的同一文件。现在我正在考虑这是可能的。 如果不能覆盖那么它应该保存在相同的文件名可能在不同的目录
请建议
任何帮助表示感谢。
答案 0 :(得分:1)
此代码假定您已将批处理文件放在与csv文件相同的目录中。
@echo off
for /f %%A in ('dir /b *.csv') do (
for /f "skip=1 tokens=1,2* delims=," %%B in (%%A) do (
echo %%B>>newdata.csv
)
copy /y newdata.csv %%A
del newdata.csv
)
此代码不会对脚本,源csv文件或目标文件夹的位置做出任何假设:
@echo off
set source_folder=C:\path\to\your\csv\files
set target_folder=C:\path\to\your\output\folder
if not exist %target_folder% mkdir %target_folder%
for /f %%A in ('dir /b %source_folder%\*.csv') do (
for /f "skip=1 tokens=1,2* delims=," %%B in (%source_folder%\%%A) do (
echo %%B>>%target_folder%\%%A
)
)