@ Компо дал хороший ответ.Это только для того, чтобы разъяснить это.Использование псевдонимов, таких как GC
, не должно вводиться в сценарии.В командной строке, конечно, идти вперед и сократить ввод текста, если вам это нравится.Кроме того, написание имен параметров дает больше информации и помогает быстрее понять.
Чтобы получить только строку 3.
GC .\mytext.txt -T 3|Select -L 1
Get-Content -Path '.\mytext.txt' -TotalCount 3 | Select-Object -Last 1
Из консоли CMD (Командная строка): (чтобы получить только строкусемь (7)
PowerShell "GC .\mytext.txt -T 7|Select -L 1"
PowerShell -NoProfile "Get-Content -Path '.\mytext.txt' -TotalCount 7 | Select-Object -Last 1"
Чтобы получить строки с 3 по 7:
$FirstLine = 3
$LastLine=7
powershell -NoProfile -Command "Get-Content -Path '.\t.txt' -TotalCount $LastLine | Select-Object -Last ($LastLine - $FirstLine + 1)"
Или в пакетном сценарии cmd.exe.
SET "FIRSTLINE=3"
SET "LASTLINE=7"
powershell -NoProfile -Command ^
"Get-Content -Path '.\t.txt' -TotalCount %LASTLINE% |" ^
"Select-Object -Last (%LASTLINE% - %FIRSTLINE% + 1)"