یاداشت های کوتاه یک برنامه نویس

طبقه بندی موضوعی

۱۴ مطلب با موضوع «linux» ثبت شده است

۱۸
ارديبهشت

آماده سازی پروژه محلی برای رهگیری تغییرات:

بعد از این که پروژه ای رو شروع کردیم به هر زبانی و با هر IDE و یا ویرایشگر متنی فرقی نمیکند (IDE هایی مثل نت بینز و یا اکلیپس پلاگین هایی برای کار با گیت دارند اما فرض میکنیم هیچ ابزاری غیر از خط فرمان و گیت در اختیار نداریم). به پوشه پروژه میریم و با دستور git init مخزن آماده میشود. و برای اولین قدم لازم است یکبار  git add . را اجرا کنیم. از این به بعد هر چیزی که تغییر کند قابل رهگیری است. (چون فایل هایی از قبل در پوشه بوده اند و تا زمانی که add نشوند رهگیری ای در کار نخواهد بود.)

  • younes RayanFar
۱۵
ارديبهشت

gist یک روش کارآمد برای به اشتراک گذاشتن یک قطعه کد است با این ابزار میتونیم یک فایل یا بخش هایی از یک فایل و یا یک برنامه کامل را به اشتراک بگذاریم. گیست در آدرس (https://gist.github.com) در دسترس است.

در واقع هر gist یک منبع (repository) گیت است. این یعنی میتونیم کلانش کنیم فورکش کنیم و به هر روشی قابل دستکاریه.

  • younes RayanFar
۰۹
ارديبهشت

سیستم کنترل نسخه گیت بسیار پیچیده و منعطف است (ادامه در ویکی پدیا). در این پست سعی میکنم یک سری از دستورات اولیه و کاربردی گیت رو لیست کنم( و حتما در آینده تکمیل خواهد شد.).

برای شروع به این صفحه برید. آموزش اینتر اکتیو گیت هاب.

و برای ادامه بهتره یک کتاب خوب در مورد گیت بخونید. (مثلا نمونه های جالبی اینجا وجود داره)

نکته : فراموش نکیند گیت و گیت هاب با هم یکی نیستند در واقع گیت هاب یک سرویس میزبانی مخازن گیت است و یک سری امکانات اضافه تر نسبت به هسته گیت در اختیار کاربرانش قرار میده. (Pull requests, issues, wikis, forking و Gists)

و اما دستورات پرکاربرد عبارتند از  :

  • younes RayanFar
۰۹
ارديبهشت

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

هنوز وقت نکردم بخونمش غیر از چند صفحه ی اول مقدمه. ترجمه ی روانی داره خوشم اومد (با تشکر از آقای مترجم مهندس مشحون).  امروز که تو نت برای خودم گشت میزدم  چند صفحه در مورد اسمبلی خوندم  (مثلا در اینجا و اینجا ). 

  • younes RayanFar
۰۶
ارديبهشت

cnf

قالب کلی این دستور به این صورته:

command-not-found {binary_name} {repository}

کار دستور cnf  هندل کردن رویداد (command-not-found) است. و به کاربر میگه که کدوم package دارای این دستوره.

وقتی به برنامه ای نیاز داریم و روی سیستم نیست .برای مثال یک فایل فشرده رو می خواهیم unrar کنیم و سیستم اخطار (command-not-found) میده . یه راه ساده اینه که قبل از هر کاری از دستور cnf استفاده کنیم.

مثلا cnf unrar خروجی زیر رو برای من تولید کرد.

yn@dhcppc0:~> cnf  unrar

The program 'unrar' can be found in the following package:
* unrar [ path: /usr/bin/unrar, repository: zypp (repo-non-oss)
Try installing with:
sudo zypper install unrar

بعد نصبش میکنیم. اینکه چرا اول سراغ نصب نمی ریم به این دلیله که شاید برنامه رو قبلا نصب کرده باشیم و به هر دلیلی متغییر PATH به درستی ست نشده باشه.

cnf gcj

Program 'gcj' is present in package 'gcc-java', which is installed on your system.
Absolute path to 'gcj' is '/usr/bin/gcj'.
Please check your $PATH variable to see whether it contains the mentioned path.

  • younes RayanFar
۲۲
فروردين

info

این دستور برای نمایش مستندات برنامه ها استفاده میشود. info شبیه دستور man است و در لینک کردن صفحات ساختار قوی تری دارد. صفحات info از ابزار textinfo استفاده میکنند و به همین دلیل قدرت بالایی در لینک کردن و پیمایش دارد.

مکان پیش فرض مستنداتی که info از آن استفاده میکند /usr/share/info است.

  • younes RayanFar
۱۹
فروردين

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

گوشی روت شده و SSH توی این کار مفید هستن، ولی واجب نیستن.

یکی از اساسی ترین برنامه های خط فرمان اندروید adb است.

با فرمان adb devices میتونید لیست وسایل اندروید مجازی یا واقعی رو که در حال حاضر در سیستم در دسترس هستن مشاهده کنید.

با adb pull و دادن مسیر و اسم فایل روی گوشی میتونید فایل رو از گوشی روی PC دانلود کنید.

با adb push میشه فایلی رو از PC به روی گوشی کپی کرد.

adb shell به شما یک شل و محیط خط فرمان گوشی رو میده. البته این کار رو با ssh هم میتونید انجام بدید، ولی مزیت adb هم اینه که نیازی به نصب و اجرای سرور SSH روی گوشی نداره و ضمنا نیازی به Tether بودن گوشی هم نداره

با adb install و adb uninstall هم میشه پکیج یا همون برنامه های apk اندروید رو نصب و آنیستال کرد (باید نام پکیج برنامه رو به فرمان uninstall بدید – مثلا com.exmple.test).

  • younes RayanFar
۱۸
فروردين

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

  • younes RayanFar
۲۸
بهمن

head


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

head [options] [file(s)]

 به صورت پیش فرض head ده خط ابتدایی فایل ها را بر میگرداند. و با گزینه -n میتوان این مقدار را به دلخواه افزایش داد. 

head -n15  Samplefile.txt 

هیچ اجباری وجود نداره که حتما 15 بعد از n  بدون فاصله بیاد , موراد زیر نتیجه یکسانی خواهد داشت.

head -n15  Samplefile.txt 
head -n 15 Samplefile.txt
head -15 Smaplefile.txt

اگر لازم باشد با گزینه -c به جای یک یا چند خط میتوان به تعداد مورد نظر کاراکتر از ابتدای فایل خواند.

head -c 15 Samplefile.txt

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

  • younes RayanFar
۱۰
شهریور

چرا گنو  لینوکس را دوست دارم1

اینکه کنار عنوان عدد گذاشتم یعنی مطلب دنباله داریه و قصد دارم امکانات و مزیت های سیستم عامل گنو لینوکس و بعضی از توزیع هاش رو برسی کنم. شاید شما هم علاقه مند شدید.

  • younes RayanFar