回复 23# killer3k
看起来vim是重定向输入数据的,ps并不会自动处理,你得自己手动解决,例如下面的- powershell -c "[io.streamreader]::new([console]::OpenStandardInput(),[text.encoding]::utf8).readtoend() -split '\r?\n' |sort"
复制代码 sort /+5这样的功能不自带,你得自己转换,然后处理,例如下面的($l=4中的4就是,从0开始)- powershell -c "$l=4;[io.streamreader]::new([console]::OpenStandardInput(),[text.encoding]::utf8).readtoend() -split '\r?\n' |foreach{if($_.length -gt $l){,@($_.substring($l,$_.length-$l),$_)}else{,@($_,$_)}}|sort {$_[0]} |foreach {$_[1]}"
复制代码 嫌复杂可以将代码放进一个bat里,然后带参数调用这个bat,在bat中只要根据参数执行对应的powershell代码就行了
poswershell中的sort命令排序时会忽略英文减号(-)之类的字符,排序结果可能跟sort.exe的结果不一样
还有poswershell很多东西都跟常规的不一样,除非非常熟悉,不然不建议跟外部程序进行交互,外部程序也不建议跟poswershell进行交互 |