คุณสามารถลองกระบวนการทางเลือกนี้ - - อยู่ในเส้นทาง
/myuser/downloads/
แต่แทนที่จะแรกสร้าง/myuser/downloads/new/
ไดเรกทอรีแทนที่จะสร้างโฟลเดอร์ใน/myuser/
ไดเรกทอรีที่มีคำสั่งmkdir ../new
แล้วย้ายไฟล์ทั้งหมดในdownloads
การnew
และในที่สุดก็ย้ายเข้ามาnew
downloads
คุณสามารถทำได้ในหนึ่งบรรทัดขณะที่อยู่ใน/myuser/downloads/
พา ธ ด้วยคำสั่ง:
mkdir ../new && mv * ../new && mv ../new ../downloads
ในกรณีนี้คุณไม่ต้องกังวลเกี่ยวกับ "การกรอง" ของไฟล์ / โฟลเดอร์ใด ๆ เนื่องจากnew
อยู่ในระดับเดียวกับพา ธdownloads
ดังนั้นคุณสามารถย้ายทุกอย่างdownloads
เข้าไปได้new
แล้วย้ายnew
ไปดาวน์โหลด
อย่างไรก็ตามหากคุณnew
สร้างโฟลเดอร์ย่อยแล้วและไม่ต้องการสร้างโฟลเดอร์ใหม่อีกไม่ต้องกังวล - เพียงแค่เปลี่ยนmkdir
คำสั่งทางด้านซ้ายมือของรายการแรก&&
ในคำสั่งที่แสดงด้านบนเป็นmv
คำสั่งผลักnew
ขึ้นใน เส้นทาง; ในคำอื่น ๆ ในขณะที่คุณยังอยู่ใน/myuser/downloads/
คุณสามารถเปลี่ยนไปmkdir ../new
mv new ..
จากนั้นโฟลเดอร์ย่อยnew
[ในพา ธ/myuser/downloads/new/
] จะถูกผลักไป/myuser/new/
ที่ระดับเดียวกัน/myuser/downloads/
และจากนั้นคุณสามารถเรียกใช้ส่วนที่เหลือของคำสั่งตามที่แสดงด้านบน ทั้งหมดเข้าด้วยกันเราได้เริ่มต้นจากเส้นทาง/myuser/downloads/
:
mv new .. && mv * ../new && mv ../new ../downloads
และเนื่องจากคุณต้องการ "ย้ายไฟล์และโฟลเดอร์ / โฟลเดอร์ย่อยทั้งหมดในโฟลเดอร์ดาวน์โหลดไปยังโฟลเดอร์ย่อย [ new
]" คุณก็ทำเสร็จแล้ว! ถ้าคุณอยากที่จะย้ายเพียงไฟล์ (หรือเพียงโฟลเดอร์หรือ [แทรกการเคลื่อนไหวของวัตถุที่ละเอียดมากขึ้น]) แล้วคุณจะต้องใช้คำสั่งอื่น ๆ ที่สามารถ "กรอง" grep
วัตถุเช่น อย่างไรก็ตามคำสั่งที่เขียนไว้ด้านบนนั้นเพียงพอสำหรับวัตถุประสงค์ของคุณ
mv * new
แต่มันจะสะอื้น "ไม่สามารถย้ายใหม่ใหม่" หรือสิ่งที่คล้ายกัน บางทีmv -i * new
คุณอาจจะป้องกันการเขียนทับ