คำสั่ง Unix ลบสองโฟลเดอร์พร้อมกันหรือไม่


คำตอบ:


28

ใช่:

rm -rf /path/to/folder1 /other/folder/in/different/place

'-f' นั้นไม่จำเป็นถ้าคุณสามารถเขียนไปยังแต่ละไฟล์และไดเร็กตอรี่หรือถ้าคุณไม่รังเกียจที่จะถูกถามคำถามมากมาย ไดเรกทอรีจะถูกลบตามลำดับ แต่ทั้งคู่จะถูกลบอันเป็นผลมาจากคำสั่งเดียว


1
ฉันไม่รู้ว่าทำไมฉันจึงไม่ลองสิ่งนี้ ...

21

ใน bash มีวิธีแทรกรายการอาร์กิวเมนต์ด้วยเครื่องหมายปีกกา:

rm -rf /path/to/{folder1,folder2}
will run
rm -rf /path/to/folder1 /path/to/folder2

สามารถแทรกได้ทุกที่:

rm -rf /{folder1,folder2}/subfolder
will run
rm -rf /folder1/subfolder /folder2/subfolder

5
มันเรียกว่า "การขยายตัวของเชลล์" ถ้าใครต้องการค้นหา
Sirex

ดังนั้นสิ่งที่เรียกว่า! ฉันพยายามค้นหา แต่ไม่สามารถสร้างเกณฑ์การค้นหาที่ดีได้
เคนนี

ส่วนย่อยที่อธิบายการขยายตัวของวัสดุในวงเล็บปีกกา{…}คือการขยายรั้ง ; มันเป็นขั้นตอนแรกที่ระบุไว้ในส่วนที่เกี่ยวกับการขยายเชลล์โดยทั่วไปเพราะมันเกิดขึ้นก่อน
Jonathan Leffler

6

หากคุณต้องการให้การลบเกิดขึ้นพร้อมกันซึ่งอาจเร็วกว่าหากอยู่ในดิสก์แยกต่างหาก แต่อาจช้าลงหากอยู่ในดิสก์เดียวกัน:

rm -rf /path/to/folder1 &
rm -rf /other/folder/in/different/place

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