[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

POWERSHELL

本帖最后由 yhcfsr 于 2018-1-25 13:01 编辑

批处理本身就不能进行浮点运算,这种情况,最好用powershell 脚本进行处理,vbs也行。单纯的bat是难解决你的问题的。更多细节沟通加我QQ33892006
单纯只是加负号也用不了浮点运算,按字符串处理,提取第四列加前面加个负号就行

以下是powershell 脚本,测试前备份源文件
  1. dir -Path $ScDir |%{
  2.     $objContent=Get-Content $_.FullName;
  3.     $result=$null;
  4.     #对第三行做判定
  5.     if ($objContent[2].Split("`t").Count -lt 5) {continue;}
  6.     ForEach($line in $objContent){
  7.          $columns=$line.Split("`t");
  8.         if ($columns[4]) {$columns[4]=((-1)*$columns[4]|%{"{0:0.0000}" -f $_});}
  9.         if ($line.ReadCount -eq 1 ) {$result=( $columns -join "`t")} else {
  10.              $result= $result,( $columns -join "`t") -join "`r`n";
  11.         }
  12.      }
  13.     if ($result) {$result|Out-File -FilePath $_.FullName;}
  14. }
复制代码

TOP

返回列表