題 如何從文件夾中的所有文件名中刪除第一個字符?


我需要從文件夾中的所有文件名中刪除第一個字符(始終為“_”)。

我目前正在使用此命令:ren _*.txt *.txt 但它不起作用。

但是,如果我跑 ren _*.txt A*.txt 它完美有效,但它不是我想要的。


4
2018-04-20 12:15


起源




答案:


再試一次,試試powershell;)

在您想要的目錄中運行:

get-childitem *.txt | rename-item -newname { [string]($_.name).substring(1) }

說明:
- get-childitem *.txt 收集實際目錄中的所有* .txt文件。
- rename-item -newname 使用在{}中生成的字符串重命名get-childitem命令的管道結果
- [string]($_.name).substring(1) 從第一個字符開始採用文件名


21
2018-04-20 12:22



嘿,它說gci不被認為是內部或外部命令 - aneuryzm
嗯......這應該有用......但是。 gci默認為Get-Childitem的別名 - 取而代之。你運行了powershell嗎?如果您在cmd.exe中嘗試它(但您可以從cmd中啟動powershell.exe)它不起作用 - wullxz
好吧,現在它有效。我還有一個小問題,第一個字符實際上是一個“。”,所以我有2個初始字符刪除“._filename.jpg”而不是“_filename.jpg”。你是如何處理點? - aneuryzm
如果你想刪除前2個字符,只需用'(2)替換'substring'之後的(1)。在powershell中,整個文件名被視為字符串(-object),包括點。 - wullxz
如果要替換名稱中間的任何部分(每個名稱都相同),則可以使用 replace 代替 substring 像這樣: get-childitem *.txt | rename-item -newname { [string]($_.name).replace("old string","new string") } - LPrc


如果你想避免寫任何東西,試試吧 批量重命名實用程序。界面起初可能非常可怕,但只是玩一下它,你會發現它實際上並不難用。


1
2018-01-18 11:24





如果將來有人需要: 我用1-4重命名。它很快, 不必安裝。當你運行它時,按F2進入高級模式,你可以告訴它殺死前4個字符。以下是該計劃的鏈接。

下載鏈接: http://www.1-4a.com/rename/


0
2018-04-06 20:41