2011-03-01 53 views
1

你好。 我想從文件夾中的所有文件中刪除前3行並保留4。 此外,某些行包含我想要刪除的前導空格。powershell - 從每個文件中刪除前3行和最後4個

這是我做了什麼:

gci c:/my_folder/ | % { 
$path = $_.fullname 
$file = gc $_ 
$file[3..($file.length-4)] | % {$_.trimstart()} | out-file $path 
} 

我不明白爲什麼在腳本的末尾所有文件包含相同的文字。 看來我的變量不會改變腳本中的值。 感謝您的幫助。

+0

似乎是爲我工作。當你輸出每行寫入文件時,你看到了什麼? – ravikanth 2011-03-01 02:43:29

+0

嗨。我剛纔看到您的評論。例如,如果我寫gci c:/ my_folder | %{gc $ _} powershell總是顯示每個文件的第一個文件的內容。如果我在$ _中修改$ _,fullname一切正常。這是問題。 – 2011-03-01 11:39:53

回答

1

正如我以爲我總是循環相同的文件。我需要修改

$file = gc $_ 

$file = gc $_.fullname 

現在一切工作正常。 謝謝相同:)

相關問題