批处理,怎么将所有csv文件的每一行前加上两列,第一列是加文件名,第二列加目录名称?

批处理,怎么将所有csv文件的每一行前加上两列,第一列是加文件名,第二列加目录名称?,第1张

@echo off

rem 在多个csv文件的每一行开头插入自身所在文件夹名称和自身文件名

set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4

title %#% +%$%%$%/%@% %z%

cd /d "%~dp0"

for %%a in ("%cd%") do set "fd=%%~nxa"

for /f "delims=" %%a in ('dir /a-d/b *.csv') do (

(for /f "delims=" %%b in ('type "%%a"') do (

echo%fd%,%%~na,%%b

))>"$%%~na.tmp"

move /y "$%%~na.tmp" "%%a"

)

echo%#% +%$%%$%/%@% %z%

pause

exit

在 Linux 系统中,可以使用 Shell 脚本语言(sh)方便地进行各种 *** 作。如果要导出表格数据到 CSV 文件中,并添加列名,可以使用 Shell 命令 sed。

首先,假设你已经将表格数据保存为名为 data.txt 的文本文件。该文件中的数据是以制表符分隔的,没有列名。

然后,使用以下命令可以在第一行添加列名,并将结果保存为新的 CSV 文件:

```

{ echo "col1,col2,col3"cat data.txt} | sed 's/\t/,/g' >data.csv

```

这个命令的含义是:先在 echo 命令中定义列名,使用管道 *** 作将列名和数据一起传递给 sed 命令,然后将制表符替换成逗号,最后将结果保存为 data.csv 文件。

通过这种方式,你可以快速方便地导出 CSV 文件,并添加列名,方便后续处理。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11651729.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存