2017-12-12 15 views
0

PowerShellでファイル名から最初の5つの数字を取得しようとします。たとえば、このpdf docがあります。これは、ファイルの名前を変更するには私のコードである「43236_1_REMESA_COPY_TRANS.pdf」PowerShell ISE - ファイルの名前を変更して文字列を追加

Get-ChildItem $workfile -Filter "*_REMESA_PRIMERA_COPIA__TRANSPORTISTA.pdf" -Recurse | Rename-Item -NewName {$_.Directory.Name + '_REM_REMESA.pdf.tsk'} 

を(Directory.Nameが、この場合、フォルダ名は「92B0336679」で、フォルダ名を取る)

私はこれを持っています結果 "92B0336679_REM_REMESA.pdf.tsk"が、元のファイルから最初の5つの数字を追加することはできません。

すべてのヘルプは大

+0

であなたを助けたり取得する場合、私は 'をForEach-Objectに{$接頭辞= $ _に配管をお勧めしたい参照いただければ幸いです。Name.Substring( 0,5)} ' – TheIncorrigible1

答えて

0

が、これはトラック

Get-ChildItem $workfile -Filter "*.pdf" -Recurse | Rename-Item -NewName {"$((((gi $workfile).Name).ToCharArray() | select -First 5) -join '')$($_.Directory.Name)_REM_REMESA.pdf.tsk"} 
+0

ありがとうThom、私はworkfileに1つの事を忘れてしまった。私は1つ以上のフォルダを持っている、ユーザーが配置するフォルダの数に応じて、それらのフォルダは" 43236 "、" 43237 "この番号は ".pdf.tsk"の前にあります。 "92B0336679_REM_REMESA43236.pdf.tsk" –

関連する問題