powershell 命令

用什么powershell命令可以把excel中A列的内容,变成B列的效果。... 用什么powershell 命令可以把excel 中A列的内容,变成B列的效果。 展开
 我来答
ChenryLee
推荐于2016-04-18 · TA获得超过1728个赞
知道小有建树答主
回答量:864
采纳率:90%
帮助的人:651万
展开全部

假如你的文本保存在C盘根目录下的a.csv中(如果是csv文件,可以另存一下,Powershell读取Excel的内容太麻烦),在第一行添加字段名String1,示例如下:

$chars=import-csv C:\a.csv
foreach($char in $chars){
    $a=$char.String1
    $a=$a.tochararray()
    [array]::Reverse($a) 
    -join $a | Add-Content -Path C:\b.txt
}

其实这个翻转也可以用Excel公式迭代实现:

1. 在B1中输入以下公式:

=IF($D$1,B1&RIGHT(LEFT(A1,IF($D$2>LEN(A1),0,LEN(A1)-$D$2+1))),"")

2. 在D2中输入以下公式:

=IF(D1,D2+1,0)

在D1中输入1回车,则公式执行,完成翻转;在D1中输入0,则B列清空,D1重新输入0,则重新进行计算。

更多追问追答
追问
谢谢你~~这个可以把内容反转过来,能把结果输出在同一个csv 里么?
就是输出的csv 即包括原来的内容,又包括反转后的内容。

先谢下了~
追答

假如原来的csv只有这一列的话,直接把文件名改成C:\a.csv就可以了。

也可以将最后一行代码改成

-join $a | Export-Csv -Path C:\a.csv -Append -NoTypeInformation

这样会在原来的基础上追加。

注解:在foreach中如果导出到csv,一定要加-Append,否则就只有最后一次循环的结果了。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式