کانال مهرداد لینوکس – Telegram
کانال مهرداد لینوکس
3.51K subscribers
713 photos
24 videos
8 files
550 links
لینوکس حرفه ای و اخبار فنی به زبان ساده
تمام محتوای کانال تحت مجوز کرییتیو کامنز (Creative Commons license) CC BY قابل استفاده است

هشتگ:
#Linux
#AI
#Python
#Programming
#DevOps
#دیوار_لینوکس
#Utility
Download Telegram
📄 دستور rmdir در لینوکس (دستور rd و rm)

دستور rmdir برای حذف دایرکتوری خالی در لینوکس استفاده میشه.
اگر دایرکتوری فایل یا زیرشاخه داشته باشه، rmdir کار نمی‌کنه و خطا میده.

اپشن‌های متداول:
rmdir testdir     حذف یک دایرکتوری خالی
rmdir dir1 dir2 dir3 حذف چند دایرکتوری
mkdir -p project/src/code
rmdir -p project/src/code حذف تو در تو

👉 همه‌ی مسیرهای خالی (code, src, project) حذف میشن.

🔥 ترفندها و تکنیک‌های ترکیبی
با دستور find بهتر میتوانید پوشه های خالی را پیدا و حذف کنید

1️⃣ حذف همه‌ی دایرکتوری‌های خالی یک مسیر را پیدا و حذف کرد:
find . -type d -empty -delete

5️⃣ پاکسازی پروژه‌های قدیمی:
find ~/projects -type d -empty -print -exec rmdir {} \;

💡 نکته:
‏rmdir فقط روی دایرکتوری خالی کار می‌کنه.
برای حذف دایرکتوری‌های غیرخالی باید از rm -r استفاده کنید (با احتیاط ⚠️).
دستور rd در بعضی linux ها یک alias است
rd is an alias for rmdir

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍16
خبر های PostgreSQL ای 😎
نسخه های جدید ابزار های :
ابزار pgwatch v4: مانیتورینگ PostgreSQL برای جمع‌آوری و نمایش متریک‌های عملکرد دیتابیس.

ابزار Autobase 2.4.0: مدیریت خودکار نسخه‌بندی (schema migrations) و تغییرات ساختار

افزونه pg_stat_kcache 2.3.1:مشاهده آمار مصرف CPU و I/O کوئری‌ها از طریق kernel.

منتشر شد
#خبر
👍151
📄 دستور touch در لینوکس

دستور touch در لینوکس بیشتر برای ایجاد فایل خالی یا تغییر زمان آخرین دسترسی/تغییر (timestamp) استفاده میشه.

اپشن‌های متداول:
touch file.txt
touch file1.txt file2.txt file3.txt
touch -t 202509261230 file.txt تغییر زمان
touch -r source.txt target.txt کپی زمان از یک فایل دیگه

🔥 ترفندهای ترکیبی و خلاقانه
touch file{1..5}.txt سری فایل
touch * به‌روزرسانی زمان همه فایل ها

برای مدیریت فایل های پروژه
touch project/{src/main.py,README.md,docs/guide.md} 


#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍20😁102
📄 دستور cp در لینوکس
دستور cp برای کپی کردن فایل‌ها و دایرکتوری‌ها استفاده میشه.

📚اپشن‌های متداول:
cp file1.txt backup.txt    کپی ساده
cp a.txt b.txt /backup/ کپی فایل هابه یک مسیر
cp -r mydir /backup/ کپی کامل دایرکتوری
cp -a mydir /backup/ حفظ مجوزها و مالکیت‌ها
cp -u file.txt /backup/ فقط اگر فایل جدیدتره
cp -v file.txt /backup/ کپی یا گزارش

🔥 ترفندهای ترکیبی و خلاقانه
cp file.txt{,.bak}  کپی brace expansion
cp *.jpg /backup/images/ کپی پسوند خاص
cat list.txt | xargs cp -t /backup/ کپی گروهی

پیشنهاد مهردادلینوکس
برای حجم بالا یا شبکه بهتره از rsync به جای cp استفاده کنید (کارآمدتر و امن‌تر).


#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍261🔥1
📄 دستور mv در لینوکس
دستور mv برای جابجایی فایل‌ها و دایرکتوری‌ها استفاده میشه.
⚡️ ولی کاربرد دومش هم خیلی مهمه: تغییر نام (rename)

اپشن‌های متداول:
mv file.txt /backup/   جابجایی
mv oldname.txt newname.txt تغییر نام
mv file1.txt file2.txt /backup/ جابجایی چند فایل
mv -v file.txt /backup/ با گزارش
mv -n file.txt /backup/ عدم overwrite
mv -i file.txt /backup/ پرسش قبل از overwrite
mv -f file.txt /backup/ اجبار به overwrite

🔥 ترفندهای ترکیبی و خلاقانه
mv data.db data_$(date +%F).db  تغییر نام با تاریخ
cat list.txt | xargs -I {} mv {} /backup/ جابجایی بر اساس لیست


اگر یک گروه از فایل ها را میخواهید تغییر نام بدید
for f in *.txt; do mv "$f" "${f%.txt}.md"; done

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍19
نظر سنجی محتوا
آیا این محتوا به نظر شما مفید بوده ؟
Anonymous Poll
68%
بله مفید است فصل بعدی ادامه داشته باشه
23%
به دنبال محتوای تخصصی تر هستم
9%
دیدن نتایج
11
📄 دستور cat در لینوکس
کلمه‌ی cat مخفف concatenate هست، یعنی به هم چسباندن.

کار اصلی این دستور نمایش محتوا و یا اتصال چند فایل متنی به هم است.
اپشن‌های متداول:
cat a.txt  نمایش
cat a.txt b.txt چند فایل با هم
cat > c.txt ایجاد فایل
cat >> file.txt اضافه کردن
cat a.txt b.txt > c.txt ترکیب
cat -n file.txt شماره گذاری
cat -v file.txt نمایش غیرقابل چاپ

⚙️ آپشن‌های پرکاربرد
-n → شماره‌گذاری همه خطو
-b → شماره‌گذاری فقط خطوط غیرخالی
-s → حذف خطوط خالی تکراری
-E → نمایش $ در انتهای هر خط
-T → نمایش تب‌ها به شکل ^I
-A → ترکیب همه (نمایش همه کاراکترهای خاص)

🔥 پیشنهاد مهرداد لینوکسی😎
میتوانید از bat به جای cat استفاده کنید و در شل cat را alias کنید
رنگی است و خروجی مرتب تری داره
alias cat="batcat"

ابزار tac (راهنمایی سایت گنو اینجا) عکس این دستور است
#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍22🔥2
📄 دستور less در لینوکس

دستور less برای مرور فایل‌های متنی بزرگ استفاده میشه، بدون اینکه کل فایل یک‌باره توی حافظه بارگذاری بشه. (برخلاف cat)

📌 کاربردهای پایه:
less file.txt      # باز کردن فایل
less +100 file.txt # شروع از خط 100
less -N file.txt # نمایش شماره خط‌ها

🔥 کلیدهای پرکاربرد داخل less

🔹 حرکت:
j → یک خط پایین⬇️ یا
k → یک خط بالا⬆️ یا
Space → یک صفحه جلو
b → یک صفحه عقب
g → رفتن به ابتدای فایل
G → رفتن به انتهای فایل

🔹 جستجو:
/pattern → جستجو به جلو
?pattern → جستجو به عقب
n → تکرار جستجو (بعدی)
N → تکرار جستجو (قبلی)

🔹ویرایش:
v → ورود به محیط ویرایشگر

🔹 خروج:
q → خروج از less

🔥 ترفندهای ترکیبی و خلاقانه
dmesg | less        # مرور لاگ کرنل
less +F logfile.log # حالت Follow مثل tail -f
ps aux | less -S # بدون شکست خطوط طولانی


🔹 باز کردن چند فایل با هم:
less file1.txt file2.txt

:n # فایل بعدی
:p # فایل قبلی


🔹 نمایش رنگ در خروجی (مثلاً برای کدها):
less -R colored.txt

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍155🔥1
🤩یک داک زیبا برای لینوکس
🔥 نسخه جدید Cairo-Dock 3.6 منتشر شد

نوار داک (Dock) یک نوار یا لانچر گرافیکیه (معمولاً پایین یا کنار دسکتاپ) که آیکون‌های برنامه‌ها رو مثل یک قفسه یا "نوار ابزار مدرن" نمایش می‌ده.
باهاش می‌تونی برنامه‌های پرکاربرد رو سریع باز کنی.
معمولاً به شکل آیکون‌های بزرگ و انیمیشنی هست (مثل Dock در macOS).
بعضی Dockها (مثل Cairo-Dock) خیلی قابل شخصی‌سازی‌اند و حتی می‌تونن جایگزین کامل پنل دسکتاپ بشن.


اگر دنبال یک نوار داک (Dock) بسیار زیبا
برای linux دسکتاپ خودتان با امکان شخصی سازی خیلی بالا هستید

نسخه جدید Cairo-Dock 3.6 با پشتیبانی از Wayland و HiDPI
منتشر شد
https://github.com/Cairo-Dock/cairo-dock-core
👍12🔥4👎31😁1
📄 دستور head در لینوکس
دستور head در linux برای نمایش ابتدای فایل استفاده میشه.
به‌طور پیش‌فرض ۱۰ خط اول فایل رو نشون میده.

📌 مثال‌های پایه:
head file.txt        # نمایش 10 خط اول
head -n 20 file.txt # نمایش 20 خط اول
head -c 50 file.txt # نمایش 50 بایت اول
head -v example1.txt # اسم فایل

🔥 ترفندهای ترکیبی و خلاقانه
head -n 5 a.txt b.txt  # چند فایل پشت سر هم
head -n 1 data.csv # فقط هدر CSV
head -n 50 logfile.log | less
ps aux | head -n 15 # فقط 15 پروسه اول
top -bn1 | head -n 5
ls -t /etc | head -n 3 | sort # برای پایپ کردن
head -q -n 3 a.txt b.txt > c.txt

📌 نکته جذاب:
با head -c می‌تونی بخشی از فایل باینری رو ببینی، خیلی کاربردی برای تشخیص فرمت فایل‌ها:
head -c 8 image.png

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍14🔥3
📄 دستور tail در لینوکس

دستور tail برای نمایش انتهای فایل‌ها در linux استفاده میشه.
به‌صورت پیش‌فرض، ۱۰ خط آخر فایل رو نشون میده.
خیلی کاربردی برای خواندن لاگ‌ها، مانیتور کردن تغییرات، و مشاهده آخرین رکوردها.

📌 مثال‌های پایه:
tail file.txt           #  10 خط آخر
tail -n 20 file.txt # 20 خط آخر
tail -c 50 file.txt # 50 بایت آخر
tail -n 5 file1.txt file2.txt # نتهای چند فایل

🔥 ترفندهای ترکیبی و خلاقانه
tail -f /var/log/syslog  مانیتورینگ لحظه‌ای
tail -f a.log b.log چند فایل همزمان
tail -n 50 -f access.log ۵۰ خط آخر و ادامه‌ی
tail -f /log/syslog | grep "error" فیلتر لحظه ای
tail -f app.log | tee -a errors.txt ذخیره خطا

📌 نکات حرفه‌ای:
می‌تونی از ‎--pid استفاده کنی تا تا وقتی یک پردازش در حال اجراست مانیتور کنی:
tail --pid=1234 -f logfile.log

💡 مثال واقعی در کار با سرورها:
sudo tail -f /var/log/auth.log | grep "Failed password"

نمایش زنده‌ی لاگ‌های ورود ناموفق SSH 😎
#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍171🔥1
📡 پروژه WGDashboard — داشبورد مدیریت WireGuard VPN

‏- WGDashboard یه ابزار تحت وبه که اجازه میده وضعیت تونل‌های WireGuard رو ببینی و مدیریت‌شون کنی بدون اینکه بخوای هر بار وارد سرور بشی.

چند نکته درباره این پروژه:
- ساخته شده با Python در بک‌اند و Vue.js در فرانت‌اند.
- دیتابیس ساده SQLite استفاده می‌کنه.
- متن باز تحت مجوز Apache-2.0 است.
- امکانات: مشاهده وضعیت کنکشن‌ها، آمار مصرف، اضافه/حذف کاربران، داشبورد زیبا و ساده.
- نصب ساده: داکر کانتینر آماده داره که می‌تونی سریع راه‌اندازیش کنی.

اگه مدیر سرورهای WireGuard هستی یا چند تونل داری، این ابزار می‌تونه وقتتو کم کنه و کار مدیریتی رو برات ساده‌تر کنه.

منبع
#VPN
👍9🔥41
📏 دستور wc — شمارنده‌ی همه‌چیز در فایل‌ها 😁

دستور wc (مخفف Word Count) برای شمردن تعداد خط‌ها، کلمات، و بایت‌ها یا کاراکترها در فایل‌ها استفاده می‌شه.
🧩 ساختار کلی
wc [OPTION] [FILE...]
wc file.txt #مثال
5 42 276 file.txt # خروجی

📤 خروجی شامل ۳ عدد :
1️⃣ تعداد خطوط
2️⃣ تعداد کلمات
3️⃣ تعداد بایت‌ها

🔍 گزینه
-l فقط شمارش تعداد خطوط (lines)
-w فقط شمارش کلمات (words)
-c شمارش بایت‌ها (bytes)
-m شمارش کاراکترها (characters) — مناسب برای فایل‌های UTF-8
-L نمایش طول بلندترین خط

📘 مثال‌های کاربردی
wc -l /etc/passwd 
تعداد خطوط فایل (تعداد کاربران سیستم)
grep "bash" /etc/passwd | wc -l
چند کاربر از bash استفاده میکنند؟
ls | wc -l تعداد فایل های یک پوشه
wc -c < file.txt اندازه فایل

⚠️ نکات حرفه‌ای
‏wc تفاوتی بین tab و space قائل نیست — همه‌ی فاصله‌ها را معادل یک جداکننده‌ی کلمه حساب می‌کند.
برای فایل‌های غیر UTF-8، بهتر است از -c استفاده کنید نه -m.
در ترکیب با pipe‌ها (|) فوق‌العاده قدرتمنده — مثلاً با grep, awk, یا sort.

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍14😁61🔥1
🔔 انتشار Python 3.14.0
پشتیبانی از حالت Free-Threaded (بدون GIL)
در برنامه‌ای محاسباتی، می‌توانید در چند نخ به صورت واقعی روی چند هسته اجرا شود
پیش‌فرض فعال نیست.هنگام ساخت یا با تنظیمات

رشته‌های Template یا t-strings
مشابه f-strings با امکان کنترل بیشتر و ارزیابی دلخواه در زمان اجرا

ارزیابی تنبلی برای annotationها (Deferred Annotations)
به جای اینکه annotationها بلافاصله در زمان تعریف تابع/کلاس ارزیابی شوند، ذخیره و زمان لازم پردازش میشن

دیباگر خارجی امن (Zero-overhead external debugger interface)
اتصال دیباگر به فرایند Python در حال اجرا بدون افزودن سربار زیاد
باید محیط اجرا اجازه اتصال بدهد

ماژول compression.zstd
پشتیبانی از الگوریتم فشرده‌سازی Zstandard در کتابخانه استاندارد

پشتیبانی از چند مفسر (Multiple Interpreters)
ماژول concurrent.interpreters در کتابخانه استاندارد امکان ایجاد چند مفسر در یک فرآیند

بهبود پیام‌های خطا و پیشنهاد اصلاحات
اگر کد اشتباه بنویسی، گاهی خطا به‌صورت «آیا منظور شما … بود؟» پیشنهاد می‌دهد

@MehrdadLinuxchannel
#Linux #لینوکس
#news
👍20🔥6
🔔 انتشار نسخه جدید اوبونتو Ubuntu 25.10 🎉
با اسم Questing Quokka

کرنل Linux 6.17
پشتیبانی از سخت‌افزارهای جدید، بهبود در عملکرد و درایورهای گرافیکی

حذف GNOME روی Xorg
گزینه “Ubuntu on Xorg” در صفحه ورود حذف و GNOME بر بستر Wayland

ترمینال جدید: Ptyxis
ترمینال Ptyxis جایگزین GNOME Terminal

تصویرنمای جدید Loupe
‏Loupe به عنوان تصویرنمای پیش‌فرض جایگزین Eye of GNOME

سوئیچ به sudo-rs
جایگزینی نسخه sudo در C، با sudo-rs

استفاده از Dracut برای initramfs
به جای initramfs-tools، از Dracut به عنوان ابزار تولید initial RAM filesystem

بهبود در رمزگذاری کامل دیسک با پشتیبانی TPM
امکان استفاده از TPM برای رمزگذاری کامل دیسک

تغییرات در Coreutils → Rust Coreutils
انتقال اجزای پایه‌ای مانند Coreutils به نسخه‌های نوشته‌شده در Rust

تغییرات دیگر قابل توجه
– حذف ابزار Startup Applications؛ مدیریت برنامه‌های خودکار در بخش Settings
– پشتیبانی RISC-V محدود به شبیه‌ساز QEMU
– تقویت پشتیبانی NVIDIA روی Wayland و بهینه‌سازی تجربه دسکتاپ

@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
14👎10👍3
🔢 دستور nl در لینوکس - شماره‌گذاری هوشمند خطوط فایل‌ها

دستور nl (مخفف number lines) برای چاپ محتوای فایل با شماره‌گذاری خودکار خطوط استفاده میشه، اما بر خلاف cat -n، می‌تونه فقط خطوط واقعی (غیر خالی) رو شماره‌گذاری کنه،
📘 مثال پایه‌ای
nl notes.txt
nl -b a file.txt # شماره گذاری همه خطوط
nl -s ": " file.txt # جدا کننده سفارشی
nl -i 10 example.txt
nl -nrz -w3 -s". "
nl -nln

⚙️ آپشن‌های مهم و حرفه‌ای
-b a همه‌ی خطوط را شماره‌گذاری کن (حتی خالی‌ها)
-b t فقط خطوط غیر خالی را شماره‌گذاری کن (پیش‌فرض)
-n ln شماره در سمت چپ (Left)
-n rn شماره در سمت راست (Right)
-n rz سمت راست با صفر پر شود (مثلاً 001، 002)
-w N عرض شماره‌ها را مشخص کن (مثلاً -w 3)
-s SEP تعیین جداکننده بین شماره و متن (مثلاً `-s "

📚 مثال‌های کاربردی و 🔥 ترفندهای ترکیبی و خلاقانه
ls | nl -s ". "  # شماره برای یک دستور دیگر
grep "error" logfile | nl شماره برای تطابق

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
16👍7
🚫 گوشی Android قدیمی شده آپدیت نمیشه؟
⛔️ لازم نیست گوشی جدید بخری

سیستم عامل LineageOS 23 نسخه ۲۳ برپایه اندروید ۱۶ منتشر شد نسخه گوشیت را پیدا کن و به روز کن
🔥 گزینه های مشابه (لیست کامل نیست صرفا برای معرفی است)
GrapheneOS
/e/OS (Murena OS)
DivestOS
PostmarketOS
Replicant
LibreMobileOS
Bliss OS / Bliss ROM
Pixel Experience
crDroid

#news
🔥26👍3👎1🤯1
🚀فایرفاکس باتری لپ تاپ تون را زیاد مصرف میکنه؟
🔥نسخه جدید Firefox 144 برای شماست

🔹 مصرف انرژی کمتر روی GPU
حالت سخت‌افزاری (Hardware Acceleration) مصرف انرژی کمتری

🔹 پشتیبانی از HDR Video
پشتیبانی ویدیوهای HDR10 را به‌صورت بومی

🔹 بهبود در WebGL و Canvas
بهبود رندر سه‌بعدی برای بازی‌ها و اپلیکیشن‌های وب پیچیده

🔹 بهبود حریم خصوصی و امنیت
پشتیبانی COEP/COOP در تب‌های جداگانه، جلوگیری بهتر از حملات Cross-Origin.

🔹 بهبود حالت Reader و ابزار ترجمه داخلی
لود سریع‌تر Reader و ترجمه دقیق‌تری متون

نسخه لینوکسی
بهبودهایی در مدیریت صدا از طریق PipeWire، رفع چند باگ در اجرای ویدیو و هماهنگی بهتر با محیط‌های GNOME و KDE.
دانلود
#news
👍19
🙋🏻‍♂️ سوال‌های شما در دایرکت کانال از مهرداد:
🔹 «چطور از Linux پول دربیارم؟»
🔹 «درآمد یک لینوکس ‌کار از کجاست؟»

برای جواب سوال:
💼 در بررسی ۲۴ آگهی شغلی IT جدید (دو روز گذشته) :

🟢 ۱۸ آگهی: نیاز به آشنایی با تسلط بر لینوکس
🔴 ۶ آگهی: بدون نیاز به لینوکس (شبکه‌های ویندوزی یا .NET)

📊 بیشترین تقاضا برای موقعیت‌های زیر بود:
DevOps
SOC / NOC
SysAdmin
🧩 برداشت تحلیلی:
لینوکس نه یک «مهارت جانبی» بلکه زبان مشترک متخصصین IT شده
از امنیت تا مانیتورینگ، نگهداری توسعه همه جا انتظار می‌ره بلد باشید
حداقل Bash، مفاهیم سرویس‌ها و ساختار سیستم‌عامل و دستورات

🔥و برای پاسخ دقیق به پرسش شما

🎯 در ادامه پست های کانال برای هماهنگی با بازار کار ایران 👇:
1️⃣ درک چرایی نیاز به لینوکس در آگهی‌ها و تحلیل موقعیت شغلی و نیاز ها
2️⃣ ادامه‌ی تمرین دستورات پایه‌ی LPIC1 (LPIC بیشتر معیار استخدامی)
3️⃣ شروعی بر Bash Scripting برای Automation

📘تا پاسخ سوال شما روی همین ۴ محور حرکت میکنیم

اما بحث این هفته در گروه:
توی شرکتی که کار کردی یا میکنی یا برای مصاحبه رفتی،
🧠 لینوکس مهارت ضروری بود یا فقط یه امتیاز مثبت؟

#شغل
@MehrdadLinuxchannel
👍12🔥2🤬1
📄 دستور strings در لینوکس
استخراج رشته‌های متنیِ قابل‌چاپ از داخل فایل‌های باینری 😎
کاربرد؟
🔥مهندسی معکوس،پیدا کردن نام توابع، پیام‌های خطا، library names.
🔥کشف URLها، توکن‌ها
🔥بررسی فایل‌های خراب یا بدافزار (اولین قدم قبل از دیباگ عمیق).

🔹 مثال‌های پایه
strings a.out              # استخراج همه رشته‌ه 
strings /bin/ls | less # خروجی طولانی
strings -n 6 file.bin # رشته‌های طول
strings -t x file.bin # offset به صورت hex
strings -f file1 file2 # قبل خروجی نام فایل

⚙️ آپشن‌های مهم
-n <num> یا --bytes=<num> : حداقل طول رشته .
-t <o|d|x> : نمایش offset رشته
-e <encoding> : تعیین encoding
-f : چاپ نام فایل قبل از خروجی.
-a : اسکن تمام بخش‌ها .
🔥 ترفندهای ترکیبی و خلاقانه
strings binary | grep -E 'https?://|http://'  # URL
strings binary | grep -iE 'token|key|password|passwd' # توکن
strings -t x binary | grep -i 'API_KEY' # offset

#دیوار_لینوکس
@MehrdadLinuxchannel
#Linux #لینوکس
#linux_command
👍16🔥6