我正在尝试使用Powershell获取一些原始数据并将其按到SQL插入语句中。第一项业务是在每行原始数据的末尾删除两个逗号(在数据之前和之后单独使用SQL代码之前)。我一直在玩Powershell的'TrimEnd'来尝试完成这项工作,但是下面的迭代似乎并没有删除行末尾的第一个逗号:
Sample 1 - (get-content -ErrorAction "Stop" source-file.txt) | Foreach-Object -ErrorAction "Stop" {$_.TrimEnd()} | out-file destination-file.sql
Sample 2 - (get-content -ErrorAction "Stop" source-file.txt) | Foreach-Object -ErrorAction "Stop" {$_.TrimEnd(',')} | out-file destination-file.sql
Sample 3 - (get-content -ErrorAction "Stop" source-file.txt) | Foreach-Object -ErrorAction "Stop" {$_.TrimEnd(",")} | out-file destination-file.sql
Sample 4 - (get-content -ErrorAction "Stop" source-file.txt) | Foreach -ErrorAction "Stop" {$_.TrimEnd()} | out-file destination-file.sql
source-file.txt看起来像这样:
foo,foo1,foo2,foo3,foo4,foo5 ,,
我希望最终得到的是:
foo,foo1,foo2,foo3,foo4,foo5,
时间200K
问题是我没有逃脱角色,或者是'Foreach / Foreach-Object'不是去这里的方法吗?在删除source-file.txt文件末尾的两个逗号之前,我想确保我走的是正确的路径。
答案 0 :(得分:0)
我一定是厌倦了某些东西或者长时间盯着屏幕但是我从@ Musaab-Al-Okaidi的建议中利用了#2。我利用{$_.TrimEnd(', ,')}
来获得我正在做的事情。干杯!