ฉันสร้างสคริปต์ต่อไปนี้ซึ่งย้ายไฟล์วันเก่าตามที่กำหนดจากไดเรกทอรีต้นทางไปยังไดเรกทอรีปลายทาง มันทำงานได้อย่างสมบูรณ์แบบ
#!/bin/bash
echo "Enter Your Source Directory"
read soure
echo "Enter Your Destination Directory"
read destination
echo "Enter Days"
read days
find "$soure" -type f -mtime "-$days" -exec mv {} "$destination" \;
echo "Files which were $days Days old moved from $soure to $destination"
สคริปต์นี้ย้ายไฟล์ได้อย่างยอดเยี่ยมนอกจากนี้ยังย้ายไฟล์ของไดเรกทอรีย่อยต้นทาง แต่ไม่สร้างไดเรกทอรีย่อยลงในไดเรกทอรีปลายทาง ฉันต้องการใช้คุณสมบัติเพิ่มเติมนี้ในนั้น
ด้วยตัวอย่าง
/home/ketan : source directory
/home/ketan/hex : source subdirectory
/home/maxi : destination directory
เมื่อฉันเรียกใช้สคริปต์นี้มันจะย้ายไฟล์ของ hex ในไดเรกทอรี maxi ด้วย แต่ฉันต้องการ hex ที่เหมือนกันควรสร้างไว้ในไดเรกทอรี maxi และย้ายไฟล์ใน hex เดียวกันนั้น
for x do
คุณพลาดไป;
แล้ว :) นอกจากนี้ฉันไม่รู้ว่าสิ่งที่คุณต้องการบรรลุด้วย$0
แต่ฉันค่อนข้างมั่นใจว่ามันจะเป็นsh
:)