powershell - powershell-连接N个文本文件,并在每行前添加文件名

标签 powershell text

Powershell-一个简单的问题。

我想串联N个文本文件并将文件名放在每行的前面。怎么做却有完整的路径和文件名?每个文件应按原样保留所有文本和行终止符。

data1.txt

this is the text in
data1 file - hello

data2.txt
four score and
seven years ago

获取此文件

output.txt
data1.txt: this is the text in
data1.txt: data1 file - hello
data2.txt: four score and
data2.txt: seven years ago

将会是这样-但这确实有效。

get-content c:\ temp \ data * .txt | foreach-object {$ tmp = get-content $; $。basename +“,” + $ tmp}> output.txt

谢谢

最佳答案

尝试这样的事情:

$path = "c:\temp"
$out  = "c:\temp\output.txt"

Get-ChildItem $path -Filter data*.txt | % {
    $file = $_.Name
    Get-Content $_.FullName | % {
        "${file}: $_" | Out-File -Append $out
    }
}

关于powershell - powershell-连接N个文本文件,并在每行前添加文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18724617/

相关文章:

javascript - 加载页面然后执行javascript

powershell - 如何在字符串中转义变量,PowerShell

javascript - 如何让我的文本在 Unity 中显示我的分数?

c - 用户输入文件

vb.net - 在组合框中设置所选项目 - vb.net

powershell - 从分隔的文本文件中删除标题

unix - PowerShell 中等效的时间命令

Powershell - While 语句

python - 使用 Python 的 Paramiko exec_command 使用 PowerShell Start-Process 启动的进程无法正常工作,尽管它在 SSH 终端上工作正常

c++ - 是否有用于 80 列格式化文本输出的库/方法?