نوشته‌های ترمینالی
2.62K subscribers
424 photos
12 videos
32 files
2.25K links
Download Telegram
Channel name was changed to «نوشته های ترمینالی»
#terminal
امروزم یه دستور بدیهی رو می‌خوایم یاد بگیریم.
دستور clear
همونطور که از اسمش مشخصه، میاد صفحه ترمینال رو پاک می‌کنه.

حالا ۲ مدل پاک کردن صفحه داریم.
یکی اینکه میاد اینقدر اینتر میزنه که نوشته ها همشون برن بالای صفحه و صفحه کاملا خالی بشه
این میشه clear -x

مدل دیگه اینکه که میاد واقعا صفجه رو تمیز می‌کنه و اینتر نمی‌زنه.
فرقشون؟
توی حالت اول (-x) اگر اسکرول کنی بالا باز هم نوشته های قدیمی رو می بینی ولی توی حالت دوم نمی‌بینی.

خیلیامون هم میایم به جای دستور clear از ctrl-l استفاده می‌کنیم. این معادل حالت دوم یعنی clear -x هست و همچنان نوشته‌های قدیمی رو نگه می‌داره.


روش کار clear هم اساسا با ansi escape code ها هست که لینکش رو گذاشتم می‌تونید ببینید.
یه سری کار جالب هم میشه کرد.
اگر خروجی clear رو توی یه فایل بریزیم یا پایپ کنیم به یه ادیتور، همچین چیزی می بینیم.
یا مثلا اگه خروجیش رو بریزیم توی یه فایل مثلا
clear > /tmp/c1

بعد هر موقع اون فایله رو cat کنیم، صفحه برامون پاک میشه :)‌
تجربه: توی سیستم‌عامل آرچ‌لینوکس، وقتی که سیستم رو آپگرید می‌کنید (مثلا با pacman -Syu) اگر این اپدیت شامل کرنل هم باشه،‌ بعد از آپدیت، اگر دستگاه USB جدید (مثل فلش مموری) به سیستم وصل کنید، نمی‌شناسه. باید حتما یه بار ریستارت کنید تا همه چیز درست کار کنه دوباره.

سوال: مگه ویندوزه که بعد آپدیت ریستارت کنیم؟
آپدیت کردن کرنل بدون ریبوت اصولا کار سختیه و توزیع‌های مختلف مدلهای مختلفی هندلش می‌کنن و آرچ اینطوری هندلش می‌کنه که کل ماژول‌های کرنل قبلی رو پاک می‌کنه (و ماژول‌های کرنل جدید رو هم تا ریبوت نکنید نمی‌ریزه) به همین خاطر تا وقتی که ریبوت نکنید اگر دستگاه جدیدی متصل کنید اون رو نمی‌شناسه ولی خب دستگاه‌های فعلی بدون مشکل کار می‌کنن.

https://www.reddit.com/r/archlinux/comments/442g8g/rebooting_after_kernel_update_to_make_the_usb_work/
چند روز پیش داشتم یه چیزی رو ارائه می‌دادم، بعد نیاز داشتم که یه چیزی رو بکشم و ازونجا که نوشتن روی تخته میسر نبود، با کاراکترهای |و - و <- شکلم رو کشیدم که لازم نیست بگم خیلی کار سختی بود.
امروز یه ابزار پیدا کردم با نام tdraw که همین کار رو خیلی مینیمال و دم دستی براتون انجام می‌ده.
https://github.com/aca/tdraw

چند تا mode مختلف داره:
۱− برای کشیدن خط/جعبه
۲− برای رسم فلش
۳− برای نوشتن متن
۴− برای پاک کردن

متاسفانه undo نداره و وارد و خارج شدن به مود نوشتن متن یکم تریکیه که سر جای خودش بنویسید ولی به نظرم کاملا قابل استفاده‌س.
نمونه چیزی که باهاش ساختم.
https://asciiflow.com/
اینم هم سایت قوی‌ای بود در زمینه ASCII art .
https://explainshell.com/
کافیه دستورات ترمینال عجیب (یا جدید)ی که می‌بینید رو توی این سایت بزنید تا بهتون توضیحش بده.
هم UI خوبی داره هم توضیحات خوبی می‌ده.
حداقل اینه که وقتی می‌خواید یه دستور sudo دار رو کپی پیست کنید که نمی‌دونید چیکار می‌کنه، توی این سایته چکش کنید.
https://github.com/kaelzhang/shell-safe-rm
یه wrapper برای rm اصلی سیستم که میاد و از یه سری اتفاقات ناگوار جلوگیری می‌کنه.
مثلا اگه rm رو با این safe-rm، جایگزین کرده باشید (مثلا alias) دیگه اجازه rm -rf /* رو نمی‌ده بهتون یا دایرکتوری های حساس رو گیر میده بهتون تا مطمئن شه اشتباهی پاکشون نمی‌کنید.

خوندن سورس کدش هم توصیه می‌شه.


راستی به صورت پیش‌فرض هم فایل‌های حذف شده رو می‌بره توی همون trash. مثل حالت گرافیکی.
👍2
به ذهنم رسید از منطقه امنم بیام بیرون و به حای qwerty از dvorak یا colemak استفاده کنم.
اینا چی هستند؟‌۲ تا مدل چیدن متفاوت صفحه کلید.

خوبی:
+ احتمالا بعد از مسلط شدن سریع‌تر تایپ می‌کنید.
+ کلیدهای پرکاربرد درست زیر دست شما در homerow هستند نه پخش توی کیبورد.

بدی:
+ هیچ کس با کیبرد شما نمی‌تونه کار کنه. (و تا حدود کمی برعکس)
+ اولش بسیار کندتر هستید.
+ شورت‌کات های برنامه‌ها رو از دست می‌دید.
+ توی ویم که همه‌چی فاجعه می‌شه. به عوض شدن جای hjkl فکر کنید.


و برای من که چپ دستم، یه بدی اضافه‌تر هم داشت این بود که dvorak برای راست‌دست‌ها بهینه شده. نسخه چپ دستی هم داره ولی نسخه‌ی غیر استاندارد از یه جینش غیر استاندارد خیلی باید ریسکی باشه.

اینطوری شد که بیخیال شدم فعلا. شاید روزی دیگر

یه مقاله معول و منطقی که توضیح داده:
https://www.howtogeek.com/189270/alternative-keyboard-layouts-explained-dvorak-colemak-and-whether-you-should-care/
یه تجربه ۱۰ ساله هم داریم:
https://www.theverge.com/2019/2/17/18223384/dvorak-qwerty-keyboard-layout-10-years-speed-ergonomics

حرف آخرش اینه که برای این خوبه که مجبور شید جای کلید ها رو حفظ کنید و به دکمه ها نگاه نکنید وگرنه خیلی فایده دیگه‌‌ای نداره.
برای تکلیف سیگنال سیستم باید توی متلب یه سری نمودار می‌کشیدیم.
میخواستم دانلود کنم باید ۲۱ گیگ دانلود می‌کردم. تازه دردسرهای نصبش توی لینوکس یا کرکش توی ویندوز هم هیچی.
از متلب آنلاین اومدم استفاده کنم که فیلترشکن می‌خواست. بعدم که خودش به باگ خورد هرچی کد توش سیو داشتم رو هم پروند، ‌ریست هم نمی‌شد. بماند که هر بار بازش می‌کردم میخواست ۲۰ مگ دانلود کنه.
ناامید شدم و گفتم بریم اکتاو هم تست کنیم.
در کمال تعجب نسخه نصبیش با dependency ها شد حدود ۳۰ مگ!
نسخه انلاینش هم به خوبی کار می‌کنه.