این آزمون چهار درس بخش «شروع کار» را میسنجد. جواب هر سؤال همان لحظه با توضیح نشان داده میشود و نتیجهات در همین مرورگر ذخیره میشود (پیشرفت من).
در «لینوکس»، هسته (kernel) چه کاری میکند؟
هسته مثل موتور ماشین است؛ توزیع ماشین کامل است.
کدام یک «توزیع» (distribution) است؟
توزیع = هسته + ابزارها + مدیر بسته + تنظیمات.
دستوری که نام و نسخهی توزیع را میدهد؟
uname -r نسخهی هسته را میدهد.
در آزمایش «یک هسته، چند توزیع» چه دیدیم؟
فرق توزیعها در ابزار و بستههاست، نه در موتور.
مدیر بستهی Fedora و Alpine به ترتیب؟
Ubuntu/Debian: apt؛ Fedora: dnf؛ Alpine: apk.
سادهترین راه برای لینوکس واقعی روی ویندوز بدون پاک کردن ویندوز؟
WSL2 رایگان و سبک است؛ ماشین مجازی هم گزینهی دیگر است.
کدام گزینه برای تمرین systemd و فایروال مناسبتر است؟
کانتینر معمولاً systemd ندارد.
ترمینال و shell چه فرقی دارند؟
میشود ترمینال را عوض کرد بدون اینکه shell عوض شود.
در ls -lh /etc کدام بخش argument است؟
ls command است، -lh option و /etc argument.
چرا ls my file.txt برای فایل «my file.txt» خطا میدهد؟
تجزیهی فاصله قبل از اجرای ls توسط shell انجام میشود.
تفاوت echo "$HOME" و echo '$HOME'؟
پیشفرض دابلquote؛ سینگل وقتی نمیخواهی چیزی تفسیر شود.
کد خروج ۰ بعد از یک دستور یعنی…
با echo $? دیده میشود.
میانبر Ctrl+R برای چیست؟
Ctrl+C قطع، Ctrl+L پاک کردن صفحه.
برای راهنمای دستور داخلی cd چه میزنی؟
cd جزو shell است و صفحهی man مستقل ندارد.
اگر کارِ دستور را میدانی ولی اسمش را نه (مثلاً کپی فایل)؟
در توضیح یکخطی همهی صفحهها جستجو میکند.
فقط با دستورهای همین بخش (بدون اینترنت) یک گزارش از سیستم بساز:
۱. توزیع و نسخه، هسته و معماری، نام کاربر و shell را با echo و دستورهای مناسب چاپ کن.
۲. بدون اینکه اسم دستور را بدانی، با apropos دستوری پیدا کن که تعداد خط و کلمهی یک فایل را میشمارد. با man همان دستور flag شمارش فقط خطها را پیدا کن و آن را روی /etc/os-release اجرا کن.
۳. با type نشان بده cd و echo و ls هر کدام چه نوع دستوریاند.
۴. یک فایل با نام گزارش من.txt (با فاصله) بساز، اسمش را درست quote کن و ثابت کن ls آن را میبیند.
۵. کد خروج یک دستور ناموفق (مثل ls /no-such-dir) را چاپ کن.
راهنمایی
دستور شمارش خط و کلمه wc است؛ برای یافتنش apropos "word count" یا apropos count. flag شمارش خط را با man wc | col -b | grep -n -i lines پیدا کن.
راهحل
. /etc/os-releaseecho "توزیع: $PRETTY_NAME"echo "هسته: $(uname -r) ($(uname -m))"echo "کاربر: $(whoami) | shell: $SHELL"echo "--- جستجوی دستور:"apropos "word" 2>/dev/null | grep -w wcman wc | col -b | grep -n -i "print the newline counts"echo "تعداد خطهای /etc/os-release: $(wc -l < /etc/os-release)"echo "--- نوع دستورها:"hash -rtype cd echo lsecho "--- فایل با فاصله:"touch "گزارش من.txt"ls "گزارش من.txt"echo "--- کد خروج:"ls /no-such-dir 2>/dev/null; echo "کد خروج: $?"توزیع: Ubuntu 24.04.5 LTSهسته: 7.0.14-linuxkit (aarch64)کاربر: ali | shell: /bin/bash--- جستجوی دستور:wc (1) - print newline, word, and byte counts for each file28: print the newline countsتعداد خطهای /etc/os-release: 13--- نوع دستورها:cd is a shell builtinecho is a shell builtinls is /usr/bin/ls--- فایل با فاصله:گزارش من.txt--- کد خروج:کد خروج: 2