ฉันมีไฟล์นับล้านไฟล์ที่มีระบบเรียกชื่อต่อไปนี้บนเครื่อง Linux:
1559704165_a1ac6f55fef555ee.jpg
ตัวเลข 10 ตัวแรกคือการประทับเวลาและคนที่ตามด้วย a _
เป็นรหัสเฉพาะ ฉันต้องการย้ายไฟล์ทั้งหมดที่ตรงกับรหัสไฟล์เฉพาะไปยังโฟลเดอร์อื่น
ฉันพยายามทำสิ่งนี้ในไดเรกทอรีพร้อมไฟล์
find . -maxdepth 1 -type f | ??????????_a1ac*.jpg |xargs mv -t "/home/ubuntu/ntest"
อย่างไรก็ตามฉันได้รับข้อผิดพลาดระบุ:
bash 1559704165_a1ac6f55fef555ee.jpg: command not found
เมื่อฉันลองmv ??????????_a1ac*.jpg
ฉันได้รับรายการข้อผิดพลาดนานเกินไป ฉันมีรูปแบบชื่อไฟล์อย่างน้อย 15 รูปแบบ ฉันจะย้ายพวกเขาอย่างไร
| ??????????_a1ac*.jpg
: ทุบตีขยายไปยังหลายชื่อไฟล์ตัวแรก1559704165_a1ac6f55fef555ee.jpg
ศรีคุณจะจบลง ในขั้นตอนที่สองนั้นพยายามที่จะดำเนินการ:1559704165_a1ac6f55fef555ee.jpg next_matching_filename 3rd_matching_filename ... nth_matching_filename
. ฉันคิดว่าคุณพยายามที่จะกรองไปยังชื่อไฟล์นั้น (ดูคำตอบด้านล่าง)