Score:1

ย้ายไฟล์ที่มีนามสกุลในโครงสร้างที่แตกต่างกัน

ธง lk

ฉันต้องการทุกการเคลื่อนไหว ไฟล์. tif ถึงผู้อำนวยการ ทิฟ ภายในผู้ปกครองของเขาผบ.

 Â âââ 1
  â âââ 240_01.tif
 เธ â âââ 240_02.TIF
  â âââ ทดสอบ
  â âââ syg_240_test_1.tif
 Â âââ 2-3
 â âââ 2
  â ââ âââ 240_01.tif
  â â â ââ âââ 240_02.TIF
  â  â  âââ ทดสอบ
   â  â â âââ
  â âââ 3
  â âââ 240_01.tif
 เธ â âââ 240_02.TIF
  â âââ ทดสอบ
  â âââ syg_240_test_1.tif
 Â âââ 4
 Â âââ 240_01.tif
 Â âââ 240_02.TIF
 Â âââ ทดสอบ
 Â âââ syg_240_test_1.tif

ตัวอย่างเช่น ควรมีลักษณะดังนี้:

âââ 1
â âââ ทดสอบ
â â â â âââ syg_240_test_1.tif
â âââ ทิฟ
â âââ 240_01.tif
â âââ 240_02.TIF
âââ 2-3
â âââ ทดสอบ
â â â â âââ syg_240_test_1.tif
â âââ ทิฟ
â âââ 2
â  â âââ 240_01.tif
ââ â ââ âââ 240_02.TIF
â âââ 3
â âââ 240_01.tif
â âââ 240_02.TIF
âââ 4
    âââ ทดสอบ
    â âââ syg_240_test_1.tif
    âââ ทิฟฟ์
        âââ 240_01.tif
        âââ 240_02.TIF

ฉันพยายามที่จะใช้ mv /path/*/*.tif/ /path/*/TIFF/*.tif แต่มันไม่ทำงาน

hr flag
ความยากในที่นี้คือคุณต้องการการดำเนินการที่แตกต่างกันโดยขึ้นอยู่กับความลึกของไฟล์ - เราจะรู้ได้อย่างไร **ทางโปรแกรม** ว่าจะย้ายไฟล์ขึ้นหนึ่งระดับหรือ 2 ระดับ จะเกิดอะไรขึ้นกับไฟล์ "other" `TEST/syg_240_test_1.tif` เมื่อคุณรวม `2-3/2/TEST` และ `2-3/3/TEST`
Score:1
ธง cn

อีกครั้ง, หา อาจมาช่วยได้ คุณสามารถเลือกหาได้ ทิฟ ไฟล์ในโฟลเดอร์ย่อยระดับแรก จากนั้นใช้ไฟล์ -ผู้บริหาร คำสั่งที่ย้ายไฟล์ที่พบไปยังโฟลเดอร์ TIFF ในไดเร็กทอรีปัจจุบัน

คุณสามารถเรียกสคริปต์ขนาดเล็กที่ทดสอบการมีอยู่ของโฟลเดอร์ TIFF หรือสร้างมันก่อนที่จะย้ายไฟล์ tiff ทั้งหมด แต่สำหรับครั้งนี้ การทำงานสองขั้นตอนน่าจะง่ายกว่า: 1) สร้างโฟลเดอร์ TIFF ในโฟลเดอร์ใดก็ได้ ของโฟลเดอร์ที่คุณต้องการ และ 2) ย้ายไฟล์ TIFF ไปที่นั่น

หา . -maxความลึก 1 -type d -path '*/*' -exec mkdir {}/TIFF \;

จะพบโฟลเดอร์ "1", "2" ฯลฯ หากไดเร็กทอรีปัจจุบันของคุณเป็นโฟลเดอร์ที่มีโฟลเดอร์เหล่านี้ และสร้างไดเร็กทอรี TIFF ในแต่ละโฟลเดอร์ จะมีข้อความแสดงข้อผิดพลาดหากมีโฟลเดอร์ TIFF อยู่แล้ว

คำสั่งที่สองสามารถย้ายทั้งหมดได้ ทิฟ ไฟล์ออกไปยังโฟลเดอร์ที่สร้างขึ้นใหม่:

หา . -type f -ipath '*/*/*.tif' -execdir mv {} TIFF \;

ที่นี่ เราค้นหาเฉพาะไฟล์ (-ประเภทฉ) ในโฟลเดอร์ "1", "2" ฯลฯ แต่ไม่อยู่ด้านล่าง เนื่องจากรูปแบบไฟล์ (-ipath). -ipath ตรงข้ามกับ -เส้นทาง ระบุว่าการจับคู่นั้นไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ เดอะ -ผู้บริหาร action ดำเนินการตามคำสั่งที่ตามมา อย่างไรก็ตาม ในขณะที่โฟลเดอร์ปัจจุบันเป็นโฟลเดอร์ของไฟล์ที่พบ {} ย่อมาจากไฟล์ที่พบ เนื่องจากการ -ผู้บริหารนี่เป็นชื่อฐานของไฟล์เท่านั้น ไฟล์จะถูกย้ายไปยังโฟลเดอร์ TIFF ในโฟลเดอร์ปัจจุบัน

ช่องว่างในชื่อไฟล์จะถูกจัดการอย่างเหมาะสมโดย {} โทเค็นไม่จำเป็นต้องใส่เครื่องหมายคำพูด แม้ว่าคุณจะทำได้

mechmati avatar
lk flag
หลังจากใช้คำสั่งนี้ dir `TIFF` อยู่ในระดับเดียวกับ `1` `2-3` `3` แต่ควรอยู่ในนั้น (1,2-3,4) ฉันได้ 1,000 dirs ทำด้วยมือไม่ใช่ความคิดที่ดี ..
Whois_me avatar
us flag
คุณพูดว่า 1,000 dirs พวกเขาทั้งหมดมีหมายเลขเป็น 1,000 หรือไม่
mechmati avatar
lk flag
ทุก dir มีชื่อสุ่ม
vanadium avatar
cn flag
คุณต้องเริ่มต้นในไดเร็กทอรีที่ถูกต้อง เนื่องจากมีการใช้ชื่อพาธสัมพัทธ์ หรือคุณต้องดัดแปลงคำสั่ง ฉันทดสอบสิ่งเหล่านี้ ดังนั้นสำหรับฉัน มันได้ผล

โพสต์คำตอบ

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