我正在寻找一个脚本,不必在 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/