我正在寻找一个脚本,不必在 PS 中,但必须在 Windows 下运行,它可以转换如下所示的单列文本文件

abc
def
ghi

进入
'abc',
'def',
'ghi'

我目前正在使用 =concatenate 在 Excel 中进行此更改,但脚本会更好。

最佳答案

使用可以使用正则表达式在开头和结尾插入字符。

get-content ./myonlinecolumn.txt | foreach {$_ -replace "^","'" -replace "`$","',"}

或者您可以使用格式运算符 -f:
get-content ./myonlinecolumn.txt  | foreach {"'{0}'," -f $_ }

删除最后一个尾随逗号需要更多工作,但这也是可能的
$a = get-content ./myonlinecolumn.txt
get-content ./myonlinecolumn.txt | foreach { if ($_.readcount -lt $a.count) {"'{0}'," -f $_ } else {"'{0}'" -f $_ }}

关于用于转换单列 CSV 文件的 PowerShell 脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5492968/

10-16 07:05