2017-08-22 58 views
-3

我正在尋找一個Powershell腳本,它將查看文本文件,找到文檔中包含非數字的一行,並將其移動到頂部。 (該文件基本上是一個數據提取,並且由於未知原因,標題行被移動到文件中的隨機位置,我想運行一個腳本,自動將它移回到頂部。)Powershell腳本將特定行剪切/粘貼到頂部

有沒有人這種事情之前的經驗?

回答

1
$File = 'C:\File.txt' 
$Header = 'Name  Number  Something' 

$Content = Get-Content -Path $File 

Set-Content -Path $File -Value $Header 
$Content | Where-Object -FilterScript { $_ -ne $Header } | Add-Content -Path $File 
  1. 存儲的文件在$File
  2. 如果標題是靜態的,可以將其存儲在一個變量$Header
  3. 獲取文件的內容,並將其存儲在一個變量$Content
  4. 設置$File的內容只是$Header
  5. 採取$Content它不等於$Header,然後通過使用配管的
0

A)獲取文件的內容

B各自的行添加到$File)查找用於使用正則表達式

C中沒有數字的線路)中查找以數字

d)內容結合兩份名單將頭頂部「 $頭+ $體」

E)保存清單文件

$File = "C:\Test.txt" 
$content = get-content $File 
$header = $content | where-object {$_ -notmatch "\d"} | ForEach-Object { "$_"} 
$body = $content | where-object {$_ -match "\d"} | ForEach-Object { "$_"} 
,$header + $body | out-file $File 
相關問題