تبلیغات
لینوکس و من - مطالب ترفند
لینوکس و من

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

نویسنده : امین | تاریخ: 1394/09/5

گاهی ممکنه لازم بشه یک فایل pdf رو به فایل های تصویری تبدیل کنیم. برای اینکار نیاز به هیچ ابزار گرافیکی‌ای ندارید. با imagemagic که یک نرم‌افزار تحت خط فرمان عالی و کامل هست میشه این کار رو انجام داد

 convert -density 150 file.pdf[0-10]  file.png

این میگه با کیفیت ۱۵۰ از صفحه ۱ تا ۱۰ از فایل file.pdf به فایلهای file.png تبدیل کن. فایلهای حاصله هم عددگذاری میشن.

حفظ همه تاریخچه های bash

نویسنده : امین | تاریخ: 1394/09/4

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

nano ~/.bashrc

این خط:
export PROMPT_COMMAND='history -a'

بستن پنجره ای که داره منابع سیستم رو می بلعه!

نویسنده : امین | تاریخ: 1394/09/4

گاهی پیش میاد برنامه های گرسنه ای مثل فایرفاکس و کرومیوم و یا حالا هر چیز دیگه ای not responding میشن. با Alt+F4 هم نمیشه بستشون. و بقدری مشکل ساز میشن که حتی ماوس هم به زور تکون میخوره. قبلا برای بستن پنجره هایی که دچار مشکل شده بودند گفته بودم از xkill استفاده کنیم. ولی این مستلزم این بود که دستوری اجرا بشه و ماوس شما به حالت مخصوص در بیاد و بعد شما روی پنجره مورد نظر کلیک کنید تا اون بسته بشه.
اما زمانی که ماوس هم دیگه جواب نمیده چه کار کنیم؟
از ابزار جالبی به نام xdotool میتونیم استفاده کنیم. این برنامه رو توی توزیع خودتون نصب کنید و بعد این دستور رو به عنوان یک keyboard shortcut تعریف کنید:

xdotool getwindowfocus windowkill

وقتی کلید ترکیبی این دستور رو فشار میدید، اون پنجره ای که الان روی همه است بسته میشه. امیدوارم در زمان هایی که همه چی داره روی اعصابمون راه میره مفید باشه!

ترفند برای گرفتن راحت تر اسکرین شات در XFCE

نویسنده : امین | تاریخ: 1394/09/4

در دسکتاپ XFCE میتونید دستور مربوط به گرفتن اسکرین شات از صفحه رو به دلخواه خودتون تغییر بدید. برای این کار وارد تنظیمات keyboard shortcuts بشید و xfce4-screenshooter رو پیدا کنید. دو تا داره، یکی با دکمه print screen و یکی با دکمه  shift و print screen. من به دلخواه خودم این دستورات رو به این شکل ها تغییر دادم:

دکمه print screen:

xfce4-screenshooter -d 3 -f -s /run/media/Data/Pictures/screenshots

این معنیش اینه که از کل دسکتاپ بعد از ۳ ثانیه عکس بگیر و در اون پوشه ای که با رنگ خاکستری مشخصه ذخیره کن.

ترکیب با دکمه shift:
xfce4-screenshooter -r -s /run/media/Data/Pictures/screenshots

و این معنیش اینه که بذار خودم محدوده ی عکس گرفتن رو مشخص کنم. با ماوس میتونید جایی رو که میخواید عکس بگیرید انتخاب کنید.

جست و جوی فایل ها به روشی بسیار ساده در Thunar

نویسنده : امین | تاریخ: 1394/08/28

روشهای متفاوتی برای جست و جوی فایل ها در لینوکس وجود داره. هم از راه خط فرمان هم از راه گرافیکی. دسکتاپ های پیشرفته تر مثل گنوم و kde خب روش خاص خودشون رو دارن. اما باید در دسکتاپ های ساده تر مثل xfce خودمون دست به کار بشیم. در فروم ها از چیزی به نام catfish برای xfce نام بردند. اما این برنامه از gtk3 استفاده میکنه و با xfce سازگاری مناسبی نداره.
ما دنبال روش ساده تر و بی دردسر تری هستیم. تلفیق حالت گرافیکی با خط فرمان، که یک جست و جوی سریع و آنی برای ما میاره و نیاز به نصب چیز خاصی نیست. البته zenity باید نصب باشه که در اکثر توزیع ها به طور پیشفرض نصبه. اگه نبود نصب کنید.

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

آنگاه در  Thunar طبق این آموزش یک custom action ایجاد کنید و این مقادیر رو براش قرار بدید: (قسمت نارنجی محلیه که اسکریپت شما اونجا قرار داره)

Name: Search for files
Command: bash ~/Programs/searchforfiles.sh %f
File pattern: *
Appears if selection contains: Directories


حالا وقتی روی یک فولدر یا داخلش رایت کلیک کنید عبارت search for files رو میبینید. خودتون نتیجه ی کار رو ببینید که چقدر سریع و تمیز این کار رو انجام میده.

ادامه مطلب

لینک‌های مرتبط

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

نویسنده : امین | تاریخ: 1394/08/26

اپلیکیشن تلگرام در لینوکس هم چیزهایی داره برای نصب کردن. توی همین وبلاگ هم در موردش نوشته بودم. اپلیکیشن خوب و راحتی بود.میگم "بود" چون حالا که میخوام آپدیتش کنم هزار و یکی dependecy داره و نزدیک ۲۰۰ . ۳۰۰ مگابایت میخواد دانلود کنه. از اون بدتر، وابسته به Qt شده، در حالی که من کاملا با GTK کار میکنم.
حالا میخوام با یه ترفند جالب و ساده از فایرفاکس استفاده کنیم تا بتونیم نسخه ی تحت وب تلگرام رو در کامپیوتر داشته باشیم. و اصلا هم معلوم نمیشه که نسخه ی تحت وبه! (این میتونه توی ویندوز هم اتفاق بیفته)

خب، هدف ما چیه؟
ما میخوایم یه فایرفاکس باز کنیم که به طور پیشفرض آدرس https://web.telegram.org رو باز کنه. اما یه سری ویژگی ها داشته باشه:
۱- اینکه با فایرفاکس اصلی ما تداخل نداشته باشه.
۲- هیچ افزونه ای لازم نیست که اجرا بشه
۳- هیچ بوکمارک و آدرس‌باری هم لازم نداریم


دسکتاپ xFCE اسکرین شات کل صفحه. مرورگر Light (جایگزین فایرفاکس)

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

۱- اول توی ترمینال این دستور رو تایپ کنید و پروفایل جدیدتون رو بسازید. اسمش هم هرچی خواستید بذارید. مثلا Telegram

 firefox -P


۲- وارد پوشه ی پروفایلتون در فولدر home کاربر خودتون بشین. که معمولا این طوریه:

 /home/amin/.mozilla/firefox/98ae4cof.Telegram

حالا یک پوشه در این جا بسازید و اسمش رو بذارید chrome و سپس یک فایل توش ایجاد کنید و اسمش رو بذارید userChrome.css و بعد محتویات زیر رو داخلش کپی کنید و ذخیره کنید

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
#TabsToolbar,
#PersonalToolbar,
#BookmarksToolbar,
#MenuToolbar,
#tabbrowser-tabs,
#nav-bar,
#TabsToolbar { display: none !important; }

۳- حالا با این دستور فایرفاکس با پروفایل تلگرام رو اجرا کنید:

light -P "Telegram" -no-remote https://web.telegram.org

۴- برای راحتی این کار میتونید دستور بالا رو بعنوان یک شورتکات توی منوی برنامه هاتون قرار بدید. آیکنش هم آیکن تلگرام رو بذارید.

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

حل مشکل وجود lag در اسکرول کردن در فایرفاکس

نویسنده : امین | تاریخ: 1394/05/2

شاید بعضی از شما متوجه کندی و Lag بسیار عذاب آوری در اسکرول کردن صفحات در فایرفاکس داشته باشید. این کارو بکنید تا مشکلتون بر طرف بشه:

وارد تنضیمات بشید، و در قسمت Genral از قسمت  Advanced تیک گزینه ی smooth scroling رو بردارید.
دیگه فایرفاکس شما موقع اسکرول کردن سایت هایی مثل فیسبوک و غیره کند و عذاب آور نخواهد بود.

حل مشکل منو های مشکی در فایرفاکس در تم های مشکی

نویسنده : امین | تاریخ: 1394/03/3

من از یک تم کاملا مشکی استفاده میکنم. سالهاست... زیبایی خاصی به محیط کار مانیتور میده. تنها مشکلی که داشت این بود که منو ها و دکمه های فایرفاکس در تم مشکی، اصلا قابل خوندن نبودند. این مشکل سالها وجود داشت تا اینکه گفتم یه سرچی بکنیم ببینیم... و دیدم که مثل همیشه یه جوابی براش هست.
وارد پوشه ی home خودتون بشید و به دایرکتوی مخفی mozilla. برید. و بعد وارد دایرکتوری firefox بشید. اونجا یه دایرکتوری هست که یه اسم عجیب غریب داره. مثلا 876sdhg.default وارد این دایرکتوری که شدید، یه دایرکتوری جدید بسازید و اسمش رو بذارید chrome
و حالا داخل chrome یه فایل css بسازید با نام userContent.css و محتویات زیر رو داخلش کپی کنید:

 input {
border: 2px inset white;
background-color: white;
color: black;
-moz-appearance: none !important;
}

textarea {
border: 2px inset white;
background-color: white;
color: black;
-moz-appearance: none !important;
}

select {
border: 2px inset white;
background-color: white;
color: black;
-moz-appearance: none !important;
}

input[type="radio"],
input[type="checkbox"] {
border: 2px inset white ! important;
background-color: white ! important;
color: ThreeDFace ! important;
-moz-appearance: none !important;
}

*|*::-moz-radio {
background-color: white;
-moz-appearance: none !important;
}

button,
input[type="reset"],
input[type="button"],
input[type="submit"] {
border: 2px outset white;
background-color: #eeeeee;
color: black;
-moz-appearance: none !important;
}

body {
background-color: white;
color: black;
display: block;
margin: 8px;
-moz-appearance: none !important;
}

لینک‌های مرتبط

تبدیل لپتاپ به مودم وایرلس در آرچ لینوکس

نویسنده : امین | تاریخ: 1394/01/3

قبلا ها اگه توی PC کانکشن ad-hoc میساختیم میتونستیم اون رو توی گوشی آندرویدمون پیدا کنیم و از اینترنت PC توی گوشی استفاده کنیم. یا از برنامه هایی مثل Airdroid و امثالهم بتونیم بدون اینکه نیاز به یک مودم جداگانه داشته باشیم استفاده کنیم. ولی دیگه از آندروید ۴ به بعد بخاطر دلایل امنیتی آندروید دیگه کانکشن های ad-hoc رو شناسایی نمیکنه.
برای دستیابی به این هدف نیاز به چیزی داریم به نام hostapd که در توزیع های لینوکسی موجوده. اما تنظیماتش برای تازه کارها یکم سخته. در آرچ و دوستان، یک اسکریپتی داریم به نام create_ap که در AUR وجود داره. برای کار با این اسکریپت باید سخت افزار وایرلس لپتاپ شما از این امکان پشتیبانی کنه که الآن دیگه اکثرا پشتیبانی میکنن. 
دستور iwconfig رو بزنید تا اینترفیس های شبکه ی PC شما رو بهتون نشون بده.
دستور create_ap راهنمایی خوبی داره. مثلا برای به اشتراک گذاشتن اینترنت PC از طریق وایرلس در لپتاپ من:

sudo create_ap wlp3s0 enp0s29f0u1c2 esm password
توضیحات:
wlp3s0 نام اینترفیس وایرلس لپتاپ
enp0s29f0u1c2 نام اینترفیسی که اینترنت بهش وارد میشه. مثلا پورت USB یا پورت LAN 
esm اسم وایرلسی که میخواید داشته باشید.
password رمز عبوری که میخواید داشته باشید.

این اسکریپت حالت های مختلفی داره. مثلا با n- دیگه اینترنتی به اشتراک گذاشته نمیشه و فقط یک کانکشن وایرلس ایجاد میشه. مثلا برای چیزایی مثل Airdroid.

با ctrl +c هم قطع میشه. البته من هر وقت این کار رو میکنم و بعدش suspend میکنم، دیگه بعد از resume موبایل نمیتونست به اون کانکشن متصل بشه و باید نام وایرلس رو عوض میکردم! اما وقتی بدون ctrl + c لپتاپ رو suspend میکنم این مشکل پیش نمیاد. گفتم اگه مال شما هم این جوری شد بدونید.

میتونید دستورتون رو در یک فایل اجرایی در پوشه ی /usr/local/bin/ قرار بدید تا با یک دستور مشخص این کانکشن ساخته بشه.
اگر پیامی مبنی بر مشکلی در RFkill گرفتید یک بار وایرلس لپتاپ رو خاموش و روشن کنید و این دستور رو بزنید:

rfkill unblock all

هارد کامپیوتر در گوشی

نویسنده : امین | تاریخ: 1393/08/26

برای گوشی های آندروید برنامه هایی هستن که با کمک اونها میتونین به مموری گوشیتون از طریق کامپیوتر بوسیله یک مرورگر ساده ی اینترنت دسترسی پیدا کنید. 
تو این فکر بودم که آیا برعکسش هم میشه؟ یعنی کاری کنیم که از طریق گوشی، به هارد کامپیوتر دسترسی داشته باشیم. این کار یه مزیت هایی داره. مثلا فکرش رو بکنید که دوست دارید یه فیلمی رو که روی لپتاپ یا کامپیوتر دارید توی تبلت یا گوشیتون نگاه کنید. اگه این کار نمیشد، باید اول فایل رو منتقل میکردید روی گوشی و بعد ازش استفاده میکردید. 
یعنی پروسه ی انتقال فایل به گوشی در هر حالت باید انجام میشد. حالا چه با اتصال USB چه با ابزارهایی مثل Airdroid و غیره. من بیشتر مد نظرم اینه که مثلا فایل منیجر گوشی رو باز کنی و بری توی هارد کامپیوترت و مثلا یه فیلم یا آهنگی رو پخش کنی. یا چمیدونم یه عکسی رو از توی کامپیوترت توی واتس اپ بفرستی. یا یه اسلایدی رو توی گوشیت باز کنی و تغییراتی بدی و ذخیره کنی و .... البته هرچند این کار هم در بطن قضیه فایلها دارن رد و بدل میشن، اما حد اقل با دخالت مستقیم شما این کار صورت نمیگیره.

برای اینکار باید از چیزی به نام samba استفاده کنیم. samba که من تلفظ میکنم سامبا، ابزاری هست که اجازه میده لینوکس این جور کارها رو بتونه انجام بده، مخصوصا بتونه با کامپیوتر های تحت ویندوز ارتباطی به این صورت پیدا کنه. راستش من زیاد سر در نمیارم از این چیزا، فقط استفاده ای رو ازش میبرم که لازم دارم!


۱- سامبا رو در توزیع خودتون نصب کنید. برای سیستم های آرچی با pacman نصب خواهد شد.
۲- حالا تنظیمات پیشفرض سامبا رو اعمال کنید
 sudo cp /etc/samba/smb.conf.default /etc/samba/smb.conf
۳- و بعد فایل تنظیمات رو با ویرایشگرتون باز کنید. مثلا
 sudo medit /etc/samba/smb.conf
۴- قسمت Share Definitions رو پیدا کنید. در این قسمت هزار و یک جور تنظیمات داره که شما تعیین میکنید یک فولدر توی سیستم شما با چه شرایطی share بشه. من کل اطلاعات هاردم به جز لینوکس توی یه پارتیشنه و در فولدر معینی mount شده. در قسمت Share Definitions من این تنظیمات رو برای این فولدر منظور میکنم:
[Data]
   comment = Data
   browseable = yes
   writable = yes
   path = /run/media/Data
   create mask = 755
+ اسمی رو که میخوام توی فایلمنیجر گوشیم ببینیم گذاشتم Data (رنگ سبز)
+ آدرس فولدری رو که میخوام share کنم به رنگ قرمز مشخصه. شما میتونید هر فولدری رو که دوست دارید بذارید.
+ میتونید چند تا فولدر رو به همین شکل share کنید و برای هر کدوم این مقادیر رو منظور کنید.

۵- یک اکانت برای samba تعریف کنید که این اکانت حق دسترسی به پوشه های share شده ی شما رو داره. نه هر کس و ناکسی!
 sudo smbpasswd -a amin
بعد از این دستور از شما پسورد میخواد. پسورد مورد نظرتون رو بنویسید. ظاهرا باید این کاربری که اینجا تعریف میکنید از قبل توی لینوکس شما ایجاد شده 
باشه. من که همون نام کاربری خودم رو انتخاب کردم.

۶- حالا باید سیستم samba رو فعال و اجرا کنیم. توی سیستم های آرچ با این شکل این کار رو میکنیم:
sudo systemctl start smbd.socket
sudo systemctl enable smbd.socket
۷- حالا گوشیتون رو به همون شبکه ی وایرلسی که لپتاپتون هم وصله متصل کنید.

۸- باید توی گوشی فایل منیجری پیدا کنیم که از samba پشتیبانی میکنه. فایل منیجر Es File manager این کار رو به راحتی انجام میده. از قسمت منو به قسمت LAN برید. و روی آیکن رفرش تپ کنید تا لیست شبکه ی سامبای کامپیوتر شما رو پیدا کنه که با یه IP نشون داده میشه. روش تپ کنید. از شما یوزرنیم و پسورد رو میخواد و بعد شما به هارد لپتاپتون دسترسی دارید. حالا برید هر کاری که میخواید بکنید!

+ توضیح اضافه اینکه بعضی از فایل منیجر ها باید IP رو خودمون بدیم. مثلا mixplorer که فایل منیجر محبوب من هست باید دستی یک شبکه ی سامبا براش تعریف کنم. نمیدونم چرا نمیتونه خودش پیدا کنه!
آی پی کامپیوتر شما با این دستور پیدا میشه:
nmblookup -d 2 * | grep ip
جلوی مقدار ip یه عدد نوشته. این مقدار رو باید به این شکل در قسمت مربوطه در فایلمنیجر گوشی وارد کرد. مثلا
smb://192.168.1.106/Data
دارم لذت میبرم از این کشف 
ویرایش: کسانی که اوبونتو دارن، دوست خوبمون رسول در این لینک با تصویر توضیح داده که چطوری این عملیات رو توی اوبونتو انجام بدیم.

... 5 6 7 8 9 10 11 ...