2017-04-05 70 views
0

如何在PowerShell中使用相對路徑和相對(通配符)文件?如何使用獲取當前目錄並使用通配符在那裏查找任何csv文件?

我曾嘗試以下,但沒有奏效:

Powershell -c 
$file= Get-ChildItem -Filter *.csv 
[System.IO.File]::ReadAllText .\$file .replace('Buyer','Alıcı'). 
replace('Supplier','Tedarikçi'). 
replace('FI','Banka'). 
replace('Supplier Reference','Tedarikçi Referansı'). 
replace('Buyer Program','Alıcı Programı'). 
replace('Buy Offer','eklif Al'). 
replace('Payment Obligation Id','Ödeme Yükümlülüğü Kimliği'). 
replace('Buyer Unique Doc Id','Alıcı Benzersiz Doküman Kimliği'). 
replace('Trade Date','Ticaret Tarihi'). 
replace('Due Date','ödeme tarihi'). 
replace('Maturity Date','Vade Tarihi'). 
replace('Currency','Para Birimi'). 
replace('Certified Value','Sertifikalı Değer'). 
replace('Buyer Payment Amount','Alıcıya Ödeme Tutarı'). 
replace('Buyer Fee','Alıcı Ücreti'). 
replace('Supplier Interest Fees','Tedarikçi Faiz Ücretleri'). 
replace('Supplier Funds Received','Alınan Tedarikçi Fonu')|sc c:\pstest\test2.csv 

我希望腳本在同一目錄中的所有CSV文件,在腳本正在運行,任何想法取?

+0

PS術語中的術語「當前目錄」是指選擇爲當前的第1個目錄。這就是點解決的問題。所以./*.jpg應該給你當前目錄中的所有jpg文件。或者你的意思是別的嗎? –

+0

這正是我的意思,但我已經嘗試過./*.csv,但沒有奏效。 –

+0

它做了什麼? –

回答

1

我認爲有很多建議如何獲得運行腳本的路徑。 Althought我是這樣做的:

$dir = $MyInvocation.MyCommand.Path 
$dir = $dir.SubString(0, $dir.LastIndexOf("\") + 1) 

然後你有腳本執行的路徑和你所需要的僅僅是打電話給你的腳本。

. $dir"MyScript.ps1" 
+0

So $ MyInvocation.MyCommand.Path獲取腳本執行的路徑?另外爲什麼我需要使用。 $ DIR 「MyScript.ps1」;這個腳本將已經運行,我想要的是找到它只是在同一個文件夾中的csv文件。 –

+0

是的。哦,你是對的。 – Luke359

相關問題