https://serverfault.com/questions/70939/how-to-replace-a-text-string-in-multiple-files-in-linux
https://serverfault.com/questions/228733/how-to-rename-multiple-files-by-replacing-word-in-file-name
https://serverfault.com/questions/212153/replace-string-in-files-with-certain-file-extension
https://serverfault.com/questions/33158/searching-a-number-of-files-for-a-string-in-linux
บทความที่กล่าวถึงเหล่านี้ล้วนตอบคำถามของฉัน อย่างไรก็ตามไม่มีพวกเขาทำงานให้ฉัน ฉันสงสัยว่าเป็นเพราะสตริงที่ฉันพยายามแทนที่มีหมายเลขอยู่ มีวิธีพิเศษในการแก้ไขปัญหานี้หรือไม่?
ฉันมีไฟล์รูปภาพที่มีéแทนที่ด้วย # U00a9 ระหว่างการย้ายข้อมูลไซต์ มีลักษณะเช่นนี้:
Lucky-#U00a9NBC-80x60.jpg
Lucky-#U00a9NBC-125x125.jpg
Lucky-#U00a9NBC-150x150.jpg
Lucky-#U00a9NBC-250x250.jpg
Lucky-#U00a9NBC-282x232.jpg
Lucky-#U00a9NBC-300x150.jpg
Lucky-#U00a9NBC-300x200.jpg
Lucky-#U00a9NBC-300x250.jpg
Lucky-#U00a9NBC-360x240.jpg
Lucky-#U00a9NBC-400x250.jpg
Lucky-#U00a9NBC-430x270.jpg
Lucky-#U00a9NBC-480x240.jpg
Lucky-#U00a9NBC-600x240.jpg
Lucky-#U00a9NBC-600x250.jpg
Lucky-#U00a9NBC.jpg
และฉันต้องการเปลี่ยนมันเป็นอย่างนี้:
Lucky-safeNBC-80x60.jpg
Lucky-safeNBC-125x125.jpg
Lucky-safeNBC-150x150.jpg
Lucky-safeNBC-250x250.jpg
Lucky-safeNBC-282x232.jpg
Lucky-safeNBC-300x150.jpg
Lucky-safeNBC-300x200.jpg
Lucky-safeNBC-300x250.jpg
Lucky-safeNBC-360x240.jpg
Lucky-safeNBC-400x250.jpg
Lucky-safeNBC-430x270.jpg
Lucky-safeNBC-480x240.jpg
Lucky-safeNBC-600x240.jpg
Lucky-safeNBC-600x250.jpg
Lucky-safeNBC.jpg
UPDATE:
ตัวอย่างเหล่านี้ทั้งหมดเริ่มต้นด้วย "LU00a9ucky แต่นี่คือภาพจำนวนมากที่มีชื่อแตกต่างกันฉันแค่กำหนดเป้าหมายส่วน" # U00a9 "ของสตริงเพื่อแทนที่ด้วย" ปลอดภัย "
rename -n 's/#U00a9/safe/' *.jpg
และคำสั่งนั้นได้รับการยอมรับ แต่ไม่มีการเปลี่ยนแปลงเกิดขึ้น
-n
เป็นno act
ตัวเลือก ซึ่งช่วยให้คุณดูว่ามันใช้งานได้จริงหรือไม่ก่อนใช้งานจริง ผลลัพธ์บนหน้าจอแสดงชื่อใหม่ที่เป็นไปได้อย่างถูกต้องหรือไม่?
rename
คำสั่งrename -n 's/#/safeNBC/' *.jpg
ฉันสงสัยว่าการเปลี่ยนชื่อของคุณจะเป็นง่ายๆเป็น