Score:0

วิธีสุ่มไฟล์และเปลี่ยนชื่อตามลำดับ

ธง nz

ฉันมีชุดของรูปภาพ .png ซึ่งปัจจุบันตั้งชื่อตามลำดับตั้งแต่ 1 ถึง 1,000 ฉันจะนำรูปภาพเหล่านี้และกำหนดใหม่ให้เป็นตัวเลขสุ่มระหว่าง 1 และ 1,000 ดังนั้นฉันจึงลงเอยด้วยช่วงของตัวเลขตามลำดับเดียวกัน แต่รูปภาพ ภายใต้แต่ละหมายเลขจะไม่เหมือนกันอีกต่อไป?

David avatar
cn flag
ดูเหมือนงานบ้านมาก
pLumo avatar
in flag
งานที่น่าสนใจอย่างไรก็ตาม ;-)
Score:0
ธง in

สามารถทำได้ดังนี้:

ชื่อ=({1..1000}.png)
new_names=($(shuf -e {1..1000}.png.tmp))
สำหรับ n ใน "${!names[@]}"; ทำ
    echo mv "${ชื่อ[$n]}" "${new_names[$n]}"
เสร็จสิ้น && เปลี่ยนชื่อ -n 's/\.tmp$//' *.tmp
  • สร้างสองอาร์เรย์ $ชื่อ และ $new_names
  • เราต้องตั้งชื่อมัน .tmp หรือเพื่อไม่ให้เขียนทับไฟล์ที่มีอยู่ เราจะแก้ไขปัญหานี้ด้วย เปลี่ยนชื่อ.
  • วนซ้ำคีย์อาร์เรย์และเรียกใช้ เอ็มวี แต่ละ.

หมายเหตุ: หากต้องการรันคำสั่ง ให้ลบไฟล์ เสียงสะท้อน และ -น จาก เปลี่ยนชื่อ.

โพสต์คำตอบ

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