صفر و یک - برنامه نویسی - لینوکس

دست نوشته های شخصی من در مورد نرم افزار، سیستم عامل و برنامه نویسی لینوکس

صفر و یک - برنامه نویسی - لینوکس

دست نوشته های شخصی من در مورد نرم افزار، سیستم عامل و برنامه نویسی لینوکس

لیدورا یک وبلاگ تخصصی برنامه نویسی یا لینوکس نیست. بیشتر محلیه برای ثبت چیزهایی که قراره بیشتر از یه بار خونده بشن. اگه به درد شما هم خورد که زکات دانش ما پرداخت شده، شکر.

آخرین نظرات

نویسندگان

یکی از کارهای خوب توی اسکریپت نویسی اینه که به کاربر دیالوگ نشون بدیم. این طوری کاربر با اسکریپت بیشتر ارتباط برقرار می‌کنه و راحت‌تر کارهاشو انجام می‌ده. برای نشون دادن دیالوگ به کاربر می‌تونید از چندتا بسته استفاده کنید که از بین اون‌ها کار با dialog از همه راحت‌تره. dialog کادرهای محاوره‌ایه متنوعی مثل کادر پیغام، پرسش، تقویم و ... رو پشتیبانی می‌کنه. از طرفی حجم خیلی کمی داره و کار باهاش پیچیده نیست.

۶ نظر موافقین ۱ مخالفین ۰ ۱۱ دی ۹۲ ، ۰۰:۰۰
علی رضا پژوهش

چند وقته که دارم از Enlightenment استفاده می‌کنم. تجربه‌ی من از Enlightenment یه مدیر پنجره‌ی واقعا پایدار و سبک و فوق العاده‌ بوده تا حالا. اگه فرصتی شد یه مطلب در مورد راهنمای نصب و پیکربندی Enlightenment در آینده می‌نویسم.

اینم یه دسکشات از Enlightenment به همراه فدورا ۲۰

 

 

این‌ها را هم ببینید:

دسکشات با آرچ و گنوم

دسکشات با فدورا ۱۹ و گنوم ۳

۲ نظر موافقین ۰ مخالفین ۰ ۰۹ دی ۹۲ ، ۰۰:۰۰
علی رضا پژوهش

python

این مطلب برای کسانی که روز و شب را در وب می‌گذرانند یا اجازه نصب مفسر پایتون را در سیستمی که با آن کار می‌کنند ندارند به درد می‌خورد. وب پر است از ابزارهای ریز و درشت پایتون که کار با پایتون را بدون نیاز به هیچ مفسر، IDE و یا ادیتوری ممکن می‌سازند. حتی ابزار‌هایی جهت Trace کردن کدها یا دیدن حافظه مجازی و همچنین ابزارهای آنلاین جهت دیباگ کردن برنامه‌ها هم تهیه شده‌اند.

در این مقاله به بررسی چند ابزار مهم و سودمند تحت وب برای پایتون می‌پردازیم.

۰ نظر موافقین ۱ مخالفین ۰ ۰۷ دی ۹۲ ، ۰۰:۰۰
علی رضا پژوهش

در روزهای آخر سال ۲۰۱۳ به معرفی بهترین توزیع‌های این سال خواهیم پرداخت. همان طور که می‌دانید راه‌های زیادی برای انتخاب توزیع‌های این لیست در دسترس است. عموماَ برای انتخاب لیست بهترین توزیع‌ها در دسترس‌ترین راه استفاده از آمارهای سایت distrowatch است اما از روش‌های دیگری مثل تعداد پست‌های انجمن‌های هر توزیع‌ یا میزان فعالیت آن‌ها نیز می‌توان استفاده کرد. این توزیع‌ها در ابتدا در وب‌سایت معتبر linux.com معرفی شده بودند.

۳ نظر موافقین ۰ مخالفین ۰ ۰۳ دی ۹۲ ، ۲۳:۲۳
علی رضا پژوهش

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

 

برای چاپ ستون های اول و سوم از فایل اول در فایل دوم از awk استفاده کنید.

awk '{print $1, $3}' file1 > file2

 

برای چاپ کاراکترهایی از ستون های هشتم تا پانزدهم فایل اول در فایل دوم از cut استفاده کنید.

cut -c 8-15 file1 > file2

 

برای جایگذاری کلمه word2 به جای word1 در فایل اول از sed استفاده کنید.

sed "s/word1/word2/g" file1 > file2

 

هر چی گشتم منبع این مطلب رو پیدا نکردم.

۰ نظر موافقین ۱ مخالفین ۰ ۰۱ دی ۹۲ ، ۰۰:۰۰
علی رضا پژوهش

Fedora 20

اگه فدورا ۲۰ رو دانلود و نصب کردید، می‌دانید که بعد از نصب فدورا باید یه سری برنامه، کدک و پلاگین رو نصب کنید و همچنین تغییراتی در تنظیمات برنامه‌ها بدید تا فدورا هر چه بهتر به سیستم عامل مورد نظر شما نزدیک بشه. در این پست بیست کاری را که بعد از نصب فدورا ۲۰ باید انجام بدید معرفی شده‌.

۱۲ نظر موافقین ۰ مخالفین ۰ ۲۹ آذر ۹۲ ، ۰۰:۰۰
علی رضا پژوهش

فدورا ۲۰ نسخه‌ی بتا

بعد از سه هفته تاخیر در نهایت فدورا ۲۰ منتشر شد. امسال سال پر خبری برای فدورا بود. هر چند که از دست دادن آقای Seth Vidal برای تیم فدورا سخت و آزاردهنده بود اما شادی انتشار فدورا ۲۰ و همچنین ده سالگی فدورا حال و هوای فدورا دوستان را به کلی تغییر داد. این بار هم مثل نسخه‌های قبل فدورا با یک دو جین تغییرات برای دانلود آماده شده است.

از مهمترین تغییرات فدورا در این نسخه می‌توان به GNOME نسخه ۳.۱۰ ، KDE Plasma Workspaces نسخه ۴.۱۱ ، Ruby on Rails نسخه ۴ اشاره کرد. در این نسخه یک spin از فدورا برای پردازشگرهای ARM هم آماده شده است.

برای تجربه‌ی بهترین و جدیدترین تکنولوزی‌های فدورا و گنوم فدورا ۲۰ Heisenbug را از وب سایت رسمی فدورا دانلود کنید. نکات انتشار فدورا ۲۰ را در اینجا ببینید.

 

۵ نظر موافقین ۰ مخالفین ۰ ۲۷ آذر ۹۲ ، ۲۱:۳۹
علی رضا پژوهش

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

۱ نظر موافقین ۰ مخالفین ۰ ۲۴ آذر ۹۲ ، ۲۱:۳۰
علی رضا پژوهش

بعضی وقت‌ها نیاز می‌شه که فایل‌هایی رو که در طول روز باهاشون کار کردید رو پیدا کنید. برای مثال سیستمتون دچار خرابی شده و می‌خواهید ببینید دستکاری چه فایل‌هایی سیستمتون رو از کار انداخته. یا ممکنه روی فایل‌هایی کار کرده باشید که پیدا کردنشون بین یه عالمه فایل دیگه سخته. یا حتی می‌خواهید ببینید برادرتون چه فایل‌هایی رو باز کرده :)

یکی از راه‌های متعددی که برای این کار هست استفاده از این دستوره

ls -al --time-style=+%D | grep `date +%D`

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

۰ نظر موافقین ۰ مخالفین ۰ ۱۸ آذر ۹۲ ، ۱۱:۵۹
علی رضا پژوهش

Import

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

۰ نظر موافقین ۰ مخالفین ۰ ۱۸ آذر ۹۲ ، ۰۱:۲۴
علی رضا پژوهش

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

du -kx | egrep -v "\./.+/" | sort -n

 

این هم خروجی:

4    ./Desktop
12    ./.gnome
28    ./.designer
704    ./.gstreamer-0.10
3228    ./.eclipse
6432    ./Downloads
13532    ./.config
23168    ./.local
33424    ./Pictures
55548    ./.fonts
121508    ./.mozilla
172684    ./.icons
269572    ./Other
548808    ./Project
947148    ./Python
4728992    ./Music
6720780    ./Documents
34029668    ./Videos
98052428    .

 

۰ نظر موافقین ۱ مخالفین ۰ ۱۶ آذر ۹۲ ، ۲۳:۲۸
علی رضا پژوهش

python

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

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

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ آذر ۹۲ ، ۰۲:۰۲
علی رضا پژوهش

proc/

فهرست proc/ در لینوکس حاوی اطلاعات مفیدی در مورد پروسه‌ها و اطلاعات سیستمی است که آشنایی با اون واقعاَ مفیده. proc/ یه Virtual File System یا سیستم فایل مجازیه که در واقع توسط procfs در مسیر proc/ مپ می‌شه. procfs یه رابط با کرنله که از ساختمان داده‌ی کرنل استفاده می‌کنه تا اطلاعاتی راجع به سیستم استخراج کنه.

اگر نگاهی به داخل این پوشه بندازید مجموعه‌ای از فایل‌ها و پوشه‌های شماره‌دار را خواهید دید.

۲ نظر موافقین ۰ مخالفین ۰ ۰۵ آذر ۹۲ ، ۱۱:۳۷
علی رضا پژوهش

wc command

اگه از یه برنامه‌ نویس بخوان که اطلاعاتی در مورد یه فایل متنی مثل تعداد خطوط یا تعداد کلمه‌های اون فایل رو استخراج کنه احتمالا از سناریویی مثل این استفاده می‌کنه :

باز کردن فایل - خواندن خط به خط فایل تا رسیدن به انتها - استخراج اطلاعات فایل - تهیه  خروجی مناسب

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

۴ نظر موافقین ۱ مخالفین ۰ ۰۳ آذر ۹۲ ، ۰۱:۱۷
علی رضا پژوهش

Kill, PKill and Killall command

دستور kill یکی از دستورات لینوکسیه که کاربرد‌های بسیاری داره، مخصوصاَ در مواقعی که می‌خواهید یه برنامه‌ی خاص یا یه پروسه رو ببندید یا از حافظه خارجش کنید.

در لینوکس هر پروسه یه شماره یا Process ID داره که از طریق اون شماره می‌شه بهش دسترسی داشت. هر بار که برنامه‌ای اجرا می‌شه برای اون برنامه یه Process ID منحصر به فرد تولید می‌شه. مثلاَ اولین فرایندی که هنگام بوت لینوکس شروع میشه پروسه‌ی init هست که به اون شماره‌ی Pid یک اختصاص داده می‌شه. در سیستم‌های جدید init با systemd جایگزین شده.

۰ نظر موافقین ۰ مخالفین ۰ ۳۰ آبان ۹۲ ، ۰۱:۰۷
علی رضا پژوهش

grep command

برای جستجوی فایل‌ها در لینوکس ابزارهای مختلفی وجود دارند که این کار را به خوبی انجام می‌دهند، اما اگر قرار باشد محتویات درون فایل‌ها را جستجو کنیم به چه ابزارهایی نیاز داریم؟

باز هم لینوکس به کمک ابزارهای قدرتمندش به ما کمک خواهد کرد تا به سرعت به جواب دلخواهمان برسیم. برای این کار راه‌ها و ابزارهای متفاوتی در دسترسند اما در این پست فقط به معرفی ابزار ساده اما قدرتمند grep اکتفا می‌کنم.

۱۱ نظر موافقین ۰ مخالفین ۰ ۲۵ آبان ۹۲ ، ۱۸:۴۳
علی رضا پژوهش

برای تبدیل صفحه به صفحه‌ی فایل PDF باید از ابزار convert که عضوی از مجموعه ابزار ImageMagick است استفاده کرد. البته ابزار convert کارهای زیادی مثل تغییر اندازه و ابعاد تصویر، مات کردن(blur)، برش(Crop) و الحاق(Join) رو هم انجام می‌ده.

ImageMagik رو در فدورا با دستور زیر نصب کنید. در اوبونتو هم در SoftwareCenter نام imagemagik را جستجو کنید.

$ sudo yum install ImageMagick

 

استفاده از دستور convert بسیار ساده است. به شکل زیر از آن استفاده کنید.

$ convert foo.pdf foo.png
$ convert foo.pdf foo.jpg
۰ نظر موافقین ۰ مخالفین ۰ ۲۴ آبان ۹۲ ، ۱۱:۳۹
علی رضا پژوهش

فدورا ۲۰ نسخه‌ی بتا

 

بعد از انتشار نسخه آلفای فدورا 20 با اسم رمز هایزن‌باگ، بعد از سه هفته تاَخیر حالا می‌توانید نسخه‌ی بتای این توزیع محبوب لینوکسی رو با تغییرات بسیاری نسبت به نسخه‌ی 19 برای سیستم‌های ۳۲ بیتی، ۶۴ بیتی و ARM دریافت کنید. فدورا 20 بتا همچنین در spin های مختلفی شامل Gnome، KDE، XFCE, LXDE, MATE-Compiz و SoaS آماده‌ی دانلود است.

نسخه‌ی نهایی فدورا 20 در تاریخ دهم دسامبر، یعنی کمتر از یک ماه دیگر منتشر خواهد شد.

صفحه ی دانلود فدورا 20 بتا

صفحه‌ی زمان بندی ارائه فدورا

 

 

۰ نظر موافقین ۰ مخالفین ۰ ۲۱ آبان ۹۲ ، ۰۱:۰۷
علی رضا پژوهش

با استفاده از دستور html2ps می‌شه HTML رو به PostScript تبدیل کرد. حالا از این دستور برای چاپ صفحات وب در ترمینال استفاده می‌کنیم. این کار در اسکریپت‌ها یا در محیط‌های کاملاَ متنی کاربرد بسیاری خواهد داشت.

 

نصب html2ls

در فدورا

sudo yum install html2ps

 

در اوبونتو

apt-get install html2ps

 

حالا برای چاپ صفحات وب می‌تونید از این دستورات استفاده کنید.

html2ps http://lidora.blog.ir/sample.html | lpr
html2ps http://lidora.blog.ir/sample.html | lp -d hpdjet
۱ نظر موافقین ۰ مخالفین ۰ ۲۱ آبان ۹۲ ، ۰۰:۴۹
علی رضا پژوهش

از این به بعد در این سری از پست‌ها اسکریپت‌های کاربردی مدیر فایل گنوم یعنی Nautilus رو معرفی می‌کنم.

در قسمت اول یه اسکریپت کاربردی به نام SUB > MOV رو معرفی ‌می‌کنم. این اسکریپت فایل زیرنویس SRT رو به فایل AVI شما اضافه می‌کنه تا از دردسر نگه داشتن فایل زیرنویس در کنار فیلم راحت بشید و یه فایل واحد داشته باشید.

۰ نظر موافقین ۰ مخالفین ۰ ۱۸ آبان ۹۲ ، ۱۳:۳۶
علی رضا پژوهش