لینوکس و من

۲۱۶ مطلب با موضوع «ترفند» ثبت شده است

کانفیگ Openbox

نمیدونم اطلاع دارید یا نه ولی من از xfce4 به openbox رفتم بخاطر همین گفتم تنظیمات اپن باکس رو به اشتراک بزارم شاید بدرد کسی خوردش.
 


اسکرین شات از اپن باکس

 

 

منحنی رنگ GIMP

در پست قبلی من ۲8 تا منحنی رنگ رو قرار دادم و در این پست 8 عدد منحنی رنگ پرکاربرد رو براتون گذاشتم.
برای دریافت هم از این لینک استفاده کنید.
دانلود از ترین بیت

دانلود یک سایت و تبدیل اون به یک فایل chm

گاهی پیش میاد که لازم داریم یک سایت رو بصورت آفلاین داشته باشیم. ابزارهای متفاوتی برای اینکار هست، اما با دم دست ترین چیز در لینوکس میشه یک سایت رو دانلود کرد. این یک نمونه ی دستور برای دانلود از یک URL خاصه (در اینجا http://example.com/exam/html ). اگه سرچ کنید به optionهای دیگه هم میرسین. اما همینا به نظر من خوبن.

 wget http://example.com/exam/html/ -k -c -r -p --no-parent --domains example.com

حالا سایت ما دانلود شده و در یک پوشه وجود داره. لینکها همه تبدیل به لینکهای local شدن تا مشکلی پیش نیاد. اما خیلی خوب میشه که مجموعه ی این فایلهای دانلود شده رو تحت عنوان یک فایل داشته باشیم. chm یک فایل مربوط به مایکروسافته. اما خب، بهر حال چیز خوبیه. فایلهای help ویندوز همه chm هستن. (دست کم تا موقعی که ویندوز اکس‌پی بود این طوری بود. در مورد ویندوزهای بعدی اطلاعی ندارم. چون دیگه کار نکردم)
خیلی گشتم تا یک ابزاری رو پیدا کردم که کارش تبدیل یک سری فایلهای html به chm بود و در لینوکس هم کار کنه. چون اکثر چیزا عکس این کار رو میکنن. یعنی فایلهای chm رو تبدیل میکنن. نه اینکه بسازن.

این فایل رو دانلود کنید و از داخل پوشه Rahman CHM Maker اجراش کنید. یک پنجره ای باز میشه که گویای همه چی هست. به راحتی میتونید فایلهای دانلود شدتون رو به chm تبدیل کنید.



نمونه اش این فایل هست که من ساختم و یک اطلس بیماری های پوستی است.

راحتر کردن samba

سلام من برای اینکه فایلی رو بین دستگاه ای انتقال بدم از samba استفاده می‌کنم ولی من دوست ندارم همیشه روشن باشه و هر موقعه نیاز بهش هست روشنش می‌کنم بخاطر همین اینو نوشتم تا راحتر بتونم اینکار رو بکنم.

#!/bin/bash
# twitter.com/m0sen70

while [ "1" == "1" ];do
sleep 1
case "$(systemctl status smbd.socket | grep 'active')" in
  *dead*)
  echo "Share Status: (OFF)"
read -r -p "Active Share? [y/N] " active
case $active in
    [yY][eE][sS]|[yY]) 
        systemctl start smbd.socket
        ;;
    *)
        exit 0
        ;;
esac
  ;;
  *listening*)
  echo "Share Status: (ON)"
  read -r -p "Stop Share? [y/N] " stop
case $stop in
    [yY][eE][sS]|[yY]) 
    systemctl stop smbd.socket
        ;;
    *)
        exit 0 
        ;;
esac
  ;;
esac
done

 

پیدا کردن یک عبارت در یک سری فایل

گاهی پیش میاد که لازم داریم دنبال یه عبارت خاص توی پوشه ها و فایلهایی که داریم بگردیم. خب باز کردن دونه دونه اونها و یکی یکی سرچ کردن هم سخته هم خنگولانه است!
با این روش ها میشه این کار رو راحت تر کرد:

grep -rnw '/path/to/somewhere/' -e "pattern"
یک دستور تیپیک برای جست و جوی عبارت pattern در یک دایرکتوری.

grep --include=\*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"

این دستور جست و جو رو در فایلهایی انجام میده که پسوند اونها به c یا h ختم بشن

grep --exclude=*.o -rnw '/path/to/somewhere/' -e "pattern"
این دستور هم میگه که همه فایلهایی که آخرشون به O ختم میشه از جست و جو خارج کن

یکم که با این دستورات بازی کنید نتیجه دلخواه خودتون رو میگیرید. برای توضیحات بیشتر به لینک منبع برید.

ویرایش:
یکی از خوانندگان عزیز وبلاگ، صدراله در مورد این سرچ کرد که چگونه یک عبارت را در تعداد زیادی فایل پیدا کنیم و اون را با یک عبارت دیگه جایگزین کنیم. یعنی همون find and replace در مقیاس بزرگ!
خودش زحمت کشید و جواب رو پیدا کرد و به اشتراک گذاشت. ممنون از تلاشش

 find /home/user/directory -name \*.c -exec sed -i "s/cybernetnews/cybernet/g" {} \;
دستور بالا در مسیر مشخص شده  cybernetnews را در فایلهایی که انتهای پسوند آنها c دارد پیدا و آن را به cybernet تبدیل میکند.

 find /home/user/directory -type f -readable -writable -exec sed -i "s/cybernetnews/cybernet/g" {} \;
دستور بالا در مسیر مشخص شده عبارت cybernetnews را در همه ی فایلهای قابل خواندن، قابل ویرایش و اجرایی  پیدا و آن را به cybernet تبدیل میکند.
بدیهیه که با این دستورها خیلی کارهای بزرگتری میشه کرد. کافیه بلد باشیم و خلاقیت داشته باشیم.

بلاک صد در صدی پنجره های مزاحم popup در فایرفاکس

حتما برای شما هم پیش آمده که وارد یک سایتی میشید (مخصوصا سایت های ایرانی) و هی همینجوری پنجره های بیخودی و مزاحم popup باز میشن. حتی این مورد در سایت های بزرگی مثل 20script هم دیده میشه.
این روش به حدی آزار دهنده است که آدم رو مجبور میکنه به دنبال یک راه حل جدی بره. هر چند خود مرورگر popupها رو بلاک میکنه، اما این مردم‌آزار ها روش هایی دارن که باز هم این کار رو میکنند.
اما یک افزونه پیدا کردم که بطور خیلی قاطعانه تمام پنجره های popup رو بلاک میکنه. صریح و بدون تعارف!
این افزونه رو برای فایرفاکس نصب کنید. (در آندروید هم نصب میشه) و از شر popup های مزاحم خلاص شید.

چگونه از شر پیام بروزرسانی Flash در فایرفاکس خلاص شویم!

یکی از آزار دهنده ترین چیزها در لینوکس از سالیان دراز مسئله Flash بوده و هست.قدیم ها که باید جون میکندی تا برای سیستم های ۶۴ بیتی نصبش کنی، الان هم که دیگه Adobe برای لینوکس توسعه اش نمیده!
از این رو فایرفاکس محترم دم به دیقه توی هر سایتی که میری میاد میگه آقا این Flash شما قدیمیه و بلاک شده،‌آپدیتش کن. بهش هم میگی نه همینو استفاده کن از فرداش دوباره همون آش و همون کاسه.
قضیه از این قراره که یه فایل از خدا بیخبری توی پوشه ی پروفایل فایرفاکس هست به نام blocklist.xml که چیزهایی که قراره بلاک بشن توی این لیست میشن و این لیست هر روز اتوماتیک دانلود میشه. بنابراین هر وقت شما به سایتی دسترسی به فلش را دادی، فردا دوباره از بین میره این اجازه شما.



کاری که میکنیم اینه که میایم محتویات این فایل رو پاک میکنیم و بعد permission اون رو به حالت read only تغییر میدیم که مرورگر عزیز دیگه نتونه این فایل رو تغییر بده.
خلاص!

 su
rm /PATH/TO/blocklist.xml
touch /PATH/TO/blocklist.xml
chown -R root:root /PATH/TO/blocklist.xml
chattr +i /PATH/TO/blocklist.xml

ISO گرفتن از دیسک

سلام قبل از هر چیز عیدتون مبارک و برای اینکه از CD یا DVD داخل کامپیوتر نسخه ISO تهیه کنید می‌تونید از دستورات زیر استفاده کنید.

readom dev=/dev/scd0 f=/path/to/image.iso
یا
dd if=/dev/cdrom of=whatever.iso
یا
cp /dev/cdrom file.iso


تبدیل pdf به فایل تصویری در لینوکس

بعضی وقت ها پیش میاد که نیاز پیدا میکنیم که یک فایل PDF رو به فایلهای تصویری تبدیل کنیم. در لینوکس راه های متفاوتی برای این کار وجود داره. یکی از این راه ها استفاده از gs هست. شبیه به این دستور
 gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r96 -sOutputFile='page-%00d.jpg' input.pdf
input.pdf آدرس فایلی است که قراره صفحاتش به عکس تبدیل بشن. قسمت page-%00d.jpg الگوی نامهایی است که قراره تولید بشن، و -r96 کیفیت تصاویره. که اگه روی ۳۰۰ بذارید تصاویر با کیفیت اما با حجم بالاتری دریافت میکنید.

برای اینکه این دستور در Thunar به صورت یک custom action در بیاد، طبق آموزش هایی که در گذشته نوشتیم عمل کنید و این دستور رو بعنوان command قرار بدید. تا با راست کلیک روی فایل های PDF در Thunar امکان تبدیل اونها بوجود بیاد. اما مشکل اینجاست که این فقط صفحه اول رو تبدیل میکنه. اگه کسی بلده که این دستور رو طوری تغییر بده که در Thunar همه ی صفحات رو تبدیل کنه بگه.
 gs -dNOPAUSE -dBATCH -sDEVICE=jpeg -r300 -sOutputFile='%n-%00d.jpg' %n
اولش میخواستم یه چیز مختص لینوکس پیدا کنم، اما جنرال‌تر شد. چون کافیه که یک مرورگر در کامپیوتر داشته باشید.
خیلی وقت ها شده که دارید با کامپیوتر کار میکنید و نیاز دارید که با گوشیتون هم یه چیزهایی رو بنویسید.

اولا تایپ با کیبرد گوشی مسلما کند تر از کیبرد کامپیوتره. دوما ممکنه چیزی که میخواید تایپ کنید توی گوشی یه URL باشه یا خیلی پیچیده باشه. پس چاره ی کار میجوییم و این راه را میابیم!
نرم افزار wifi keyboard و خیلی چیزهای مشابه دیگه ای وجود دارند که این کار رو برای ما انجام میدن. کافیه یکی از اونها رو نصب کنید و بعد توی قسمتی که توی گوشی یا تبلت آندرویدیتون میخواید تایپ کنید نوع کیبورد رو به wifi keyboard تغییر بدید. و بعد آدرس IP که به شما میده توی مرورگر کامپیوترتون وارد کنید. (یه چیزی شبیه برنامه هایی مثل Air Droid) و بعد باید توی گوشی تایید کنید.
 
حالا هر چی توی اون قسمت تایپ کنید، توی گوشیتون هم میتونید ببینید. از سمت راست هم اگه روی No Cache تنظیم باشه تایپ شما بصورت real time انجام میشه. اما اگه روی enter باشه، برای اینکه چیزی رو که تایپ کردید روی گوشی ببینید باید اینتر بزنید.

با یه ترفند میشه ماجرا رو جالب تر هم کرد. طبق آموزش هایی که قبلا توی همین وبلاگ داده شده میتونید برای فایرفاکس یک پروفایل جدید بسازید، بدون هیچ چیز اضافه ای. که فقط این پنجره باز بشه و شما بتونید تایپ کنید.