Score:1

วิธีเปลี่ยนชื่อไฟล์: picture.jpg.~1~ เป็น picture_~1~.jpg

ธง sy

ฉันมีไฟล์ประเภทนี้ 30,000 ไฟล์: picture.jpg.~12~

เป็นข้อมูลสำรองที่เหลืออยู่ (mv -v --backup=numbered ...)

ฉันต้องการเปลี่ยนนามสกุลเป็น: picture.~12~.jpg

Score:1
ธง sy

ในที่สุดฉันก็พบวิธีแก้ปัญหานี้ซึ่งอาจเป็นแรงบันดาลใจให้คุณในช่วงเวลาแห่งจิตวิญญาณอันมืดมิดอันยาวนานนี้

ls *~*~* | sed -n "s/\(.*\)\.\([^.]*\).\(~[0-9]*~\)$/mv -v --backup=numbered \"\0 \" \"\1_\3.\2\"/p">switch_extensions.sh
chmod +x switch_extensions.sh
./switch_extensions.sh > switch_extensions.log

บรรทัดแรกสร้างคำสั่ง:

mv -v --backup=numbered "ทรอมโบน.tif.~10~" "ทรอมโบน_~10~.tif"

บรรทัดที่สองทำให้เรียกใช้งานได้ บรรทัดที่สามเปลี่ยนชื่อขณะสร้างไฟล์บันทึก จากนั้นความโล่งใจอย่างรวดเร็วจากการคร่ำครวญของวิญญาณมืด ลองมัน!

คุณอาจรู้วิธีแก้ปัญหาที่ฉลาดกว่า ดังนั้นมาระดมสมองกัน! :-)

bac0n avatar
cn flag
`mmv '*.jpg.*' '#1.#2.jpg'`
sudodus avatar
jp flag
+1, @xerostomus ความท้าทายที่ดี :-)
sudodus avatar
jp flag
@bac0n คำสั่งที่ยอดเยี่ยมสำหรับงานนี้ ฉันจะจัดการส่วนของชื่อไฟล์ด้วยวิธีขยายพารามิเตอร์ bash แล้วทำคำสั่ง mv แต่มันง่ายกว่ามาก เมื่อดูลิงก์ในความคิดเห็นของคุณที่คำถาม ฉันเห็นว่าฉันได้ทำการโหวตเมื่อหลายปีก่อนแล้ว แต่ลืมไปแล้ว :-P
Cyrus avatar
cn flag
@xerostomus: โปรดทราบ: [ทำไม *ไม่* แยกวิเคราะห์ `ls`?](http://unix.stackexchange.com/questions/128985/why-not-parse-ls)
xerostomus avatar
sy flag
@Cyrus แน่นอน ฉันล้างพิษก่อน ฉันไม่ยอมให้อิสระกับชื่อไฟล์มากนัก :-)
xerostomus avatar
sy flag
@bacOn - ขอบคุณ ฉันไม่รู้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา