2017-10-06 154 views
0

我在需要更改文件名的目錄中有幾千個圖像。我搜索了幾個選項,但沒有一個適合我。如何使用php來更改文件名中的字母

我想有從 前更改文件名:47308_xyz_old.jpg到47308_new.jpg

感謝。

+2

應該是什麼舊名稱,新名稱的區別 – shashi

+1

這是相當廣泛的,並且SO不是代碼寫入服務。請添加您嘗試過的代碼和遇到的問題,然後我們可以爲您提供幫助。 – Swellar

回答

0
$files = scandir(__DIR__); 
foreach ($files as $file) { 
    if(file_exists($file)) 
    rename($file, str_replace("xyz_old", "new", $file)); 
}   

scandir()

rename()

+0

感謝代碼AZ,但不幸的是,它不會更改任何文件。我遵循鏈接,但大部分信息涉及更改全名,刪除或添加特殊字符並重命名目錄移動。 –

+0

你的文件和目錄應該是可寫的 – AZinkey

+0

他們是。我仍然沒有運氣。上面代碼的 –

0

這可能幫助別人的未來: 我無法得到任何PHP腳本在這樣,我與命令行去目錄批量重命名文件。我對文件數量也很謙虛(實際高於350K),所以命令行可能是更好的第一選擇。 正如我只是想更改文件名的一小部分, 變化:47308_xyz_old.jpg到47308_new.jpg 這是我的解決方案

cd /var/www/vhosts/YOURDIR 
Rename all *_old.jpg to new.jpg 
for f in *_old.jpg; do 
mv -- "$f" "${f%_old.jpg}new.jpg" 
done 

感謝

相關問題