的Dropbox已經搞砸了許多文件在我的文件夾,所以這裏的情況: 我現在有2名的每個文件我想保留:批量重命名文件和覆蓋,如果文件名已經存在(窗口)
1)文件*。
2)文件(家庭-PC的矛盾複製2014年12月4日)。*
文件我想保持是第二個,我想刪除的第一個文件,以便最終結果將只有一個名爲file。*(first name)的文件和第二個文件的內容。 這發生在許多文件夾中的許多文件,我想批量重命名所有的文件,替換第一個文件。
我一直在使用本網站上的兩個文件a.txt中和b.txt(用於實驗)這個PowerShell命令嘗試:
Get-ChildItem . -include *.txt | Move-Item -Destination { $_.name.Replace("a","b")} -Force
但沒有用,PowerShell的不執行任何操作,並拋出如果我不使用-Force,則會出錯。 我沒有任何PowerShell或命令提示符的經驗,但我可以複製/粘貼命令,因爲我嘗試了上述命令。
我也曾嘗試使用其他命令,失敗:
Get-ChildItem . -include *.txt | Where-Object { $_.name -match "a$" } | Move-Item -destination { $_.name -replace "a$", "b" }
從我嘗試使用這個腳本,它檢測文件名是否包含一個括在括號中的單詞?我不明白這段代碼的一行,但這工作:) :)非常感謝! – Usman 2014-12-06 08:47:22
@Usman - 如果你想了解它是如何工作的,你將不得不學習正則表達式。網上有很多教程。我已經更新了答案來描述它所尋找的模式,並且我添加了一個我認爲可能更精確的新版本。 – dbenham 2014-12-06 15:19:19
感謝您的解釋和更新的代碼:) – Usman 2014-12-07 07:56:31