2

私は PowerShell を初めて使用しますが、Windows バッチで文字列の長さを取得する簡単な方法がないため、使用したいと思います。

.txt ファイルの各行を調べて、その行の文字長を判断するコードを PowerShell で作成する必要があります。文字の長さが250を超える場合....など。

....etc の部分は現時点では重要ではありません :)

Windows バッチでは、次のように記述します。

FOR /F %%A IN ("C:\TestFile.txt") DO (
    SET LINE=%%A
    If LINE > 250 characters then (        ' This line is made up
    ....etc
    )

どうすればいいですか?

4

3 に答える 3

6

The following will do what you want:

$data = Get-Content "C:\TestFile.txt"
foreach($line in $data)
{
   if ($line.Length -gt 250) {
       Write-Host "A match"
   }
}
于 2012-09-20T21:19:14.927 に答える
1

これを試して:

:: Not fully tested:
for /f "delims=" %%s in (C:\TestFile.txt) do (
   set "x=%%s" & set /A y+=1
   setlocal enabledelayedexpansion
   for /f "skip=1 delims=:" %%i in ('"(set x&echo()|findstr /o ".*""') do set/a n=%%i-4
   if !n! gtr 250 echo Line !y! Length !n!
   endlocal
)
于 2012-09-21T06:04:09.330 に答える