คำสั่ง Linux mv ย้ายข้อมูลไปยังตำแหน่งที่ไม่รู้จักหรือไม่?


11

ฉันเผลอทำคำสั่งนี้ใน SSH:

mv /var/www/vhosts/website/httpdocs/magento/*

ข้อมูลทั้งหมดใน magento dir หายไปแล้ว ไม่มีใครรู้ว่ามันย้ายไปอยู่ที่ไหน?

ขอบคุณ!


a=( /var/www/vhosts/website/httpdocs/magento/* ); echo "${a[${#a[@]}-1]}"การตรวจสอบโดยอัตโนมัติซึ่งในไดเรกทอรีข้อมูลของคุณไปและถ้าคุณกำลังใช้ทุบตีทำเช่นนี้: หากไม่ได้อยู่ใน Bash สิ่งนี้ควรใช้งานได้: printf '%s\n' /var/www/vhosts/website/httpdocs/magento/* | tail -1. มิฉะนั้นอาจเป็นไปได้มากในไดเรกทอรีสุดท้ายคือตัวอักษรและตัวเลข เสร็จสิ้น
gniourf_gniourf

คำตอบ:


20

หากรายการตามลำดับตัวอักษรในไดเรกทอรีนี้เป็นไดเรกทอรีตัวเอง

สมมติว่าคุณมีไฟล์a, bและและไดเรกทอรีc dในกรณีนี้,

mv /var/www/vhosts/website/httpdocs/magento/*

ขยายเป็น

mv /var/www/vhosts/website/httpdocs/magento/a /var/www/vhosts/website/httpdocs/magento/b /var/www/vhosts/website/httpdocs/magento/c /var/www/vhosts/website/httpdocs/magento/d

dซึ่งเป็นคำสั่งที่จะย้ายทุกอย่างไป ดูที่นั่นถ้ามีอะไร

หากdไม่ใช่ไดเรกทอรีmvควรได้รับคำร้องเรียนเกี่ยวกับเรื่องนั้น


1
+1: ดูใต้ส่วนย่อยใน / var / www / vhosts / เว็บไซต์ / httpdocs / magento / * dir คำแนะนำ: subdir ยังคงอยู่ใน dir วีโอไอพีดังนั้นมันควรจะง่ายเพราะเกือบทุกอย่างตอนนี้ควรอยู่ข้างใต้ดังนั้นจึงควรมีเพียงหนึ่ง dir ที่เหลือ (ไม่นับที่เริ่มต้นด้วย '.') ป้อนส่วนย่อยนั้นและ "mv * .. " สิ่งนี้สามารถย้ายสิ่งต่าง ๆ ที่เคยอยู่ภายใต้ไดเรกทอรีนั้นมาก่อนดังนั้นคุณจะต้องนำสิ่งเหล่านั้นกลับมา + ไฟล์ใด ๆ ที่มีชื่อเดียวกับไฟล์ของ magento / * จะมีการเขียนทับ benn (หาก "mv" ของคุณไม่ได้ใช้นามแฝงเป็น "mv -i")
Olivier Dulac

2
เคล็ดลับเรียบร้อยกับmv *: mkdir zzz; mv *ซึ่งจะย้ายเนื้อหาทั้งหมดของไดเรกทอรีปัจจุบันไปยังไดเรกทอรี zzz ตรวจสอบให้แน่ใจว่าคุณไม่มีไฟล์ใด ๆ ที่เรียงลำดับย่อหน้าหลัง zzz

2

เพื่อขยายการตอบกลับของ glglgl:

การขยาย wildcard บรรทัดคำสั่งในระบบปฏิบัติการคล้าย Unix นั้นดำเนินการโดยเชลล์ ในกรณีส่วนใหญ่กับ Linux bashมันจะเป็น หน้าคนของมันอย่างชัดเจนระบุว่าการขยายตัวตัวแทนจะถูกจัดเรียงตามตัวอักษร แบบเดียวกันควรใช้ได้กับเชลล์ที่ใช้บอร์นส่วนใหญ่


อาจไม่เพียง แต่มากที่สุด แต่ทั้งหมด มิฉะนั้นจะไม่มีความเข้ากันได้
glglgl
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.