| TEST(1) | General Commands Manual | TEST(1) |
نام (NAME)
test - بررسی نوع فایلها و مقایسه مقادیر
خلاصه دستور (SYNOPSIS)
test EXPRESSION
test
[ EXPRESSION ]
[ ]
[ OPTION
توضیحات (DESCRIPTION)
بررسی نوع فایلها و مقایسه مقادیر.
گزینهها (OPTIONS)
- -h, --help
- نمایش راهنما
- -V, --version
- نمایش نسخه
اطلاعات بیشتر (EXTRA)
با وضعیت خروجی تعیینشده توسط EXPRESSION خارج میشود.
در صورت حذف EXPRESSION، مقدار پیشفرض نادرست (false) است. در غیر این صورت، EXPRESSION درست یا نادرست بوده و وضعیت خروج را تعیین میکند. این عبارت یکی از موارد زیر است:
( EXPRESSION )
عبارت EXPRESSION
درست است
! EXPRESSION
عبارت EXPRESSION
نادرست
است
EXPRESSION1 -a EXPRESSION2
هر دو عبارت
EXPRESSION1 و EXPRESSION2 درست
هستند
EXPRESSION1 -o EXPRESSION2
دستکم یکی
از عبارات
EXPRESSION1 یا EXPRESSION2 درست
است
عملیات رشتهای:
-n STRING
طول STRING
غیرصفر
است
STRING
معادل -n STRING
-z STRING
طول STRING صفر
است
STRING1 = STRING2
رشتهها
برابر
هستند
STRING1 != STRING2
رشتهها
نابرابر
هستند
STRING1 > STRING2
مقدار STRING1 در
لوکال (locale)
جاری
بزرگتر از
STRING2 است
STRING1 < STRING2
مقدار STRING1 در
لوکال (locale)
جاری
کوچکتر از
STRING2 است
مقایسههای عدد صحیح:
INTEGER1 -eq INTEGER2
مقدار INTEGER1
برابر با INTEGER2
است
INTEGER1 -ge INTEGER2
مقدار INTEGER1
بزرگتر یا
مساوی INTEGER2
است
INTEGER1 -gt INTEGER2
مقدار INTEGER1
بزرگتر از
INTEGER2 است
INTEGER1 -le INTEGER2
مقدار INTEGER1
کوچکتر یا
مساوی INTEGER2
است
INTEGER1 -lt INTEGER2
مقدار INTEGER1
کوچکتر از
INTEGER2 است
INTEGER1 -ne INTEGER2
مقدار INTEGER1
نابرابر با
INTEGER2 است
عملیات فایلی:
FILE1 -ef FILE2
فایلهای FILE1
و FILE2 شماره
دستگاه و
اینود (inode)
یکسانی
دارند
FILE1 -nt FILE2
فایل FILE1
جدیدتر (از
نظر تاریخ
تغییر) از FILE2
است
FILE1 -ot FILE2
فایل FILE1
قدیمیتر
از FILE2 است
-b FILE
فایل FILE وجود
دارد و یک
فایل ویژه
بلوکی (block special)
است
-c FILE
فایل FILE وجود
دارد و یک
فایل ویژه
نویسهای (character
special) است
-d FILE
فایل FILE وجود
دارد و یک
دایرکتوری
است
-e FILE
فایل FILE وجود
دارد
-f FILE
فایل FILE وجود
دارد و یک
فایل
معمولی (regular file)
است
-g FILE
فایل FILE وجود
دارد و بیت
set-group-ID آن تنظیم
شده است
-G FILE
فایل FILE وجود
دارد و
متعلق به
شناسه گروه
مؤثر (effective group ID)
است
-h FILE
فایل FILE وجود
دارد و یک
پیوند
نمادین است
(مشابه -L)
-k FILE
فایل FILE وجود
دارد و بیت
چسبان (sticky bit) آن
فعال است
-L FILE
فایل FILE وجود
دارد و یک
پیوند
نمادین است
(مشابه -h)
-N FILE
فایل FILE وجود
دارد و از
زمان آخرین
خوانده شدن
تغییر
یافته است
-O FILE
فایل FILE وجود
دارد و
متعلق به
شناسه
کاربر مؤثر
(effective user ID) است
-p FILE
فایل FILE وجود
دارد و یک
پایپ
نامگذاریشده
(named pipe) است
-r FILE
فایل FILE وجود
دارد و مجوز
خواندن به
آن داده شده
است
-s FILE
فایل FILE وجود
دارد و
اندازه آن
بزرگتر از
صفر است
-S FILE
فایل FILE وجود
دارد و یک
سوکت است
-t FD
توصیفگر
فایل FD روی
یک ترمینال
باز شده
است
-u FILE
فایل FILE وجود
دارد و بیت
set-user-ID آن تنظیم
شده است
-w FILE
فایل FILE وجود
دارد و مجوز
نوشتن به آن
داده شده
است
-x FILE
فایل FILE وجود
دارد و مجوز
اجرا (یا
جستجو) به آن
داده شده
است
بهجز -h و -L، تمام آزمونهای مربوط به FILE پیوندهای نمادین را دنبال میکنند (dereference). توجه داشته باشید که پرانتزها برای پوستهها باید با نویسه گریز مشخص شوند (مثلاً با بکاسلش). مقدار INTEGER همچنین میتواند -l STRING باشد که به طول STRING ارزیابی میشود.
نکته: عملگرهای دودویی -a و -o ذاتاً مبهم هستند. بهجای آنها از test EXPR1 && test EXPR2 یا test EXPR1 || test EXPR2 استفاده کنید.
نکته: دستور [ از گزینههای --help و --version پشتیبانی میکند، اما test چنین نیست. دستور test با هر یک از آنها مانند هر STRING غیرخالی دیگری رفتار میکند.
نکته: ممکن است پوسته شما نسخه اختصاصی خود از test و/یا [ را داشته باشد که معمولاً جایگزین نسخه توصیفشده در اینجا میشود. لطفاً برای جزئیات گزینههایی که پشتیبانی میکند به مستندات پوسته خود مراجعه کنید.
هرگاه stderr یک ترمینال باشد، خطاها با بازتاب عبارت و درج یک علامت هشتک (caret) زیر آرگومان معیوب گزارش میشوند؛ هر چیز دیگری که stderr را بخواند، همان پیام تکخطی معمول را دریافت میکند.
نسخه (VERSION)
v(uutils coreutils) 0.11.0
| 2026-09-01 |