如何将 *.csv 复制到同一目录中的一个 txt 文件?使用PowerShell

发布于 2024-11-09 14:00:35 字数 63 浏览 0 评论 0原文

在 C:Temp 中,我有 5 个 csv 文件,如何将所有文件复制到一个 file.txt 中? 谢谢 约瑟夫

In C:Temp I have 5 csv files, how I copy all to one file.txt?
Thanks
Josef

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

将军与妓 2024-11-16 14:00:35

如果您知道名称,则可以像这样获取内容:

Get-Content c:\item1.csv, c:\item2.csv
# or
Get-Content c:\*.csv

Get-Content 命令将读取所有指定的文件并将其作为字符串数组返回。请注意,您也可以指定编码。

Get-Content -Encoding Utf8 c:\*.csv

(有关详细信息,请参阅 Get-Help Get-Content -onlinehelp gc -online

至于将内容存储到文件中,请通过管道传输 Get 的 otput -ContentSet-Content。您也可以指定编码。我这么说是因为默认情况下重定向 (>) 会将内容输出为 Unicode,而这并不总是需要的。

长话短说。使用:

Get-Content *.csv | Set-Content file.txt

您当然可以使用内置 cmdlet 来处理 CSV。首先列出文件并通过管道连接到 Import-Csv。这将为每个 csv 行生成一个 PsObject。这通过管道传输到 Export-CSv 以将其存储在文件中:

Get-Item c:\csv1.csv, c:\csv2.csv | 
  Import-Csv | 
  Export-Csv c:\res.txt

If you know the names, you can get the content like this:

Get-Content c:\item1.csv, c:\item2.csv
# or
Get-Content c:\*.csv

The Get-Content command will read all the specified files and return it as array of strings. Note that you can specify encoding as well.

Get-Content -Encoding Utf8 c:\*.csv

(for more info see Get-Help Get-Content -online or help gc -online)

As for storing the content to the file, pipe the otput from Get-Content to Set-Content. You can specify encoding as well. I'm saying that because redirection (>) by default outputs the content as Unicode, which is not always wanted.

Long story short. Use:

Get-Content *.csv | Set-Content file.txt

You can of course use build-in cmdlets for working with CSV. First list the files and pipe to Import-Csv. This will produce an PsObject for each csv row. This is piped to Export-CSv to store it in a file:

Get-Item c:\csv1.csv, c:\csv2.csv | 
  Import-Csv | 
  Export-Csv c:\res.txt
浸婚纱 2024-11-16 14:00:35
cat *.csv > yourtxtfilename.txt

如果您只想使用命令提示符,请将 cat 替换为 type

通配符扩展顺序未定义,因此如果顺序很重要,您可以使用以下方式显式指定它:

cat file1.csv, file2.csv, file3.csv, file4.csv, file5.csv > file1-5.csv

catGet-Content 的别名

cat *.csv > yourtxtfilename.txt

If you're just going to use the command prompt, replace cat with type.

The wildcard expansion order is undefined, so if the order is important you can specify it explicitly with:

cat file1.csv, file2.csv, file3.csv, file4.csv, file5.csv > file1-5.csv

cat is an alias for Get-Content

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文