ตรวจสอบว่ามีไดเร็กทอรีหรือไม่

Bash:
ตรวจสอบว่ามีไดเร็กทอรีหรือไม่

วิธีการ:

ที่สำคัญที่สุด, Bash ช่วยให้คุณตรวจสอบการมีอยู่ของไดเร็กทอรีโดยใช้คำสั่งเงื่อนไขและตัวดำเนินการ -d ด้านล่างเป็นตัวอย่างที่ช่วยให้เห็นว่าการทำการตรวจสอบนี้ใช้งานอย่างไร

if [ -d "/path/to/directory" ]; then
    echo "The directory exists."
else
    echo "The directory does not exist."
fi

ผลลัพธ์ตัวอย่าง (ถ้าไดเร็กทอรีมีอยู่):

The directory exists.

ผลลัพธ์ตัวอย่าง (ถ้าไดเร็กทอรีไม่มีอยู่):

The directory does not exist.

สำหรับสคริปต์ที่ซับซ้อนขึ้น, มันเป็นเรื่องปกติที่จะผสมผสานการตรวจสอบกับการดำเนินการอื่นๆ เช่น การสร้างไดเร็กทอรีหากมันไม่มีอยู่:

DIR="/path/to/directory"
if [ -d "$DIR" ]; then
    echo "$DIR exists."
else
    echo "$DIR does not exist. Creating now..."
    mkdir -p "$DIR"
    echo "$DIR created."
fi

ผลลัพธ์ตัวอย่าง (ถ้าไดเร็กทอรีไม่มีอยู่แล้วจึงถูกสร้างขึ้น):

/path/to/directory does not exist. Creating now...
/path/to/directory created.

ถึงแม้ว่า Bash เองจะมีเครื่องมือที่แข็งแกร่งสำหรับการตรวจสอบเช่นนี้ แต่ก็ไม่มีไลบรารีของบุคคลที่สามที่ได้รับความนิยมโดยเฉพาะสำหรับงานนี้ เนื่องจากคำสั่ง Bash พื้นฐานมีความสามารถเพียงพอและมีประสิทธิภาพสำหรับการตรวจสอบการมีอยู่ของไดเร็กทอรี