از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
بررسی کنید که آیا فایل در Bash وجود دارد یا خیر
سرفصلهای مطلب
انواع مختلفی از فایل ها در Bash برای اهداف مختلف استفاده می شود. گزینه های زیادی در Bash برای بررسی وجود یا عدم وجود فایل خاص موجود است. وجود فایل را می توان با استفاده از عملگرهای تست فایل با دستور “test” یا بدون دستور “test” بررسی کرد. اهداف انواع مختلف اپراتورهای تست فایل برای بررسی وجود فایل در این آموزش نشان داده شده است.
اپراتورهای تست فایل
بسیاری از عملگرهای آزمایش فایل در Bash وجود دارند تا بررسی کنند که آیا یک فایل خاص وجود دارد یا نه. در ادامه به برخی از آنها اشاره شده است:
اپراتور | هدف |
-ف | برای بررسی اینکه آیا فایل وجود دارد و آیا یک فایل معمولی است استفاده می شود. |
-د | برای بررسی اینکه آیا فایل به عنوان دایرکتوری وجود دارد یا خیر استفاده می شود. |
-e | فقط برای بررسی وجود فایل استفاده می شود. |
-h یا -L | برای بررسی اینکه آیا فایل به عنوان یک پیوند نمادین وجود دارد یا خیر استفاده می شود. |
-r | برای بررسی اینکه آیا فایل به عنوان یک فایل قابل خواندن وجود دارد یا خیر استفاده می شود. |
-w | برای بررسی اینکه آیا فایل به عنوان یک فایل قابل نوشتن وجود دارد یا خیر استفاده می شود. |
-ایکس | برای بررسی اینکه آیا فایل به عنوان یک فایل اجرایی وجود دارد یا خیر استفاده می شود. |
-s | برای بررسی وجود فایل و غیر صفر بودن آن استفاده می شود. |
-ب | برای بررسی اینکه آیا فایل به عنوان یک فایل ویژه بلوک وجود دارد یا خیر استفاده می شود. |
-ج | برای بررسی اینکه آیا فایل به عنوان یک فایل کاراکتر خاص وجود دارد یا خیر استفاده می شود. |
نمونه های مختلف برای بررسی اینکه آیا فایل وجود دارد یا نه
بسیاری از راه های بررسی وجود فایل معمولی در این قسمت از آموزش نشان داده شده است.
مثال 1: وجود فایل را با استفاده از عملگر -F با یک براکت سوم بررسی کنید ([])
یک فایل Bash با اسکریپت زیر ایجاد کنید که نام فایل را از کاربر می گیرد و بررسی کنید که آیا فایل در مکان فعلی وجود دارد یا نه با استفاده از عملگر -f در شرایط “if” با براکت سوم منفرد ([]).
#نام فایل را بگیرید
اکو -n “نام فایل را وارد کنید:”
خواندن نام فایل
#با استفاده از عملگر -f بررسی کنید که آیا فایل وجود دارد یا خیر
اگر [ -f “$filename“ ]; سپس
اکو “فایل وجود دارد.”
دیگر
اکو “فایل موجود نیست.”
فی
اسکریپت دو بار در اسکریپت زیر اجرا می شود. نام فایل عدم وجود در اولین اجرا داده شده است. نام فایل موجود در اجرای دوم داده شده است. دستور “ls” برای بررسی وجود یا عدم وجود فایل اجرا می شود.
مثال 2: وجود فایل را با استفاده از عملگر -F با دو براکت سوم بررسی کنید ([[ ]])
یک فایل Bash با اسکریپت زیر ایجاد کنید که نام فایل را به صورت a بگیرد command-line آرگومان کنید و بررسی کنید که آیا فایل در مکان فعلی وجود دارد یا نه با استفاده از عملگر -f در شرایط “if” با دو براکت سوم ([[ ]]).
#نام فایل را از command-line بحث و جدل
نام فایل=1 دلار
#بررسی کنید که آیا استدلال گم شده است یا خیر
اگر [ “$filename“ != “” ]; سپس
#با استفاده از عملگر -f بررسی کنید که آیا فایل وجود دارد یا خیر
اگر [[ -f “$filename“ ]]; سپس
اکو “فایل وجود دارد.”
دیگر
اکو “فایل موجود نیست.”
فی
دیگر
اکو “برهان گم شده است.”
فی
اسکریپت دو بار در اسکریپت زیر اجرا می شود. هیچ آرگومانی در اجرای اول داده نشده است. نام فایل موجود به عنوان آرگومان در اجرای دوم داده می شود. دستور “ls” برای بررسی وجود یا عدم وجود فایل اجرا می شود.
مثال 3: وجود فایل را با استفاده از عملگر -F با دستور “تست” بررسی کنید.
یک فایل Bash با اسکریپت زیر ایجاد کنید که نام فایل را به صورت a بگیرد command-line استدلال کنید و بررسی کنید که آیا فایل در مکان فعلی وجود دارد یا نه با استفاده از عملگر -f با دستور “test” در شرط “if”.
#نام فایل را از command-line بحث و جدل
نام فایل=1 دلار
#بررسی کنید که آیا استدلال گم شده است یا خیر
اگر [ $# -lt 1 ]; سپس
اکو هیچ استدلالی ارائه نشده است».
خروج 1
فی
#با استفاده از عملگر -f بررسی کنید که آیا فایل وجود دارد یا خیر
اگر تست -ف “$filename“; سپس
اکو “فایل وجود دارد.”
دیگر
اکو “فایل موجود نیست.”
فی
اسکریپت دو بار در اسکریپت زیر اجرا می شود. هیچ آرگومانی در اجرای اول داده نشده است. یک نام فایل موجود در اجرای دوم داده شده است.
مثال 4: وجود فایل را با مسیر بررسی کنید
یک فایل Bash با اسکریپت زیر ایجاد کنید که بررسی کند آیا مسیر فایل با استفاده از عملگر -f با دستور “test” در شرایط “if” وجود دارد یا خیر.
#نام فایل را با محل دایرکتوری تنظیم کنید
نام فایل=“temp/courses.txt”
#با استفاده از عملگر -f بررسی کنید که آیا فایل وجود دارد یا خیر
اگر تست -ف “$filename“; سپس
اکو “فایل وجود دارد.”
دیگر
اکو “فایل موجود نیست.”
فی
پس از اجرای اسکریپت خروجی زیر ظاهر می شود:
نتیجه
روش های بررسی اینکه آیا یک فایل معمولی در مکان فعلی یا مکان خاص وجود دارد یا نه، در این آموزش با استفاده از چندین مثال نشان داده شده است.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-28 20:25:04