تبلیغات
وبلاگ تخصصی لینوکس - اطلاعات مفید از manual bash
 
وبلاگ تخصصی لینوکس
درباره وبلاگ


به نام خداوند جان افرین

حکیم سخن در زبان آفرین



من كاربر علاقه مند به لینوكس و فارق التحصیل IT سال 89

در این وبلاگ اطلاعاتی كه در رابطه با لینوكس كسب
می كنم رو خواهم گذاشت تا مورد استفاده دیگران
قرار بگیره

مدیر وبلاگ : azam keimasi
مطالب اخیر
نویسندگان
دوشنبه 14 شهریور 1390 :: نویسنده : azam keimasi
امروز داشتم manual bash رو می خوندم البته تمومم نشد خیلی مفصله و خیلی جالب. یه سری مواردی که جالب بود اینجا بطور خلاصه و برای اشاره به اونها میارم

bash - GNU Bourne-Again SHell


یه توضیح در ابتدا از shell آورده که میگه :
 DESCRIPTION
       Bash  is  an  sh-compatible  command language interpreter that executes commands read from the standard input or from a file.  Bash also incorporates useful
       features from the Korn and C shells (ksh and csh).

میگه یه محیطی برای اجرای فرامین هستش  که محیطی تعاملیه. همچنین ویژگی های ksh و csh را هم دراست.

یه جا در مورد Pipeline گفته

The standard output of command is connected via a pipe to the standard input of command2.

که توضیح میده خروجی استاندارد کامند اول میشه ورودی استاندارد کامند دوم

مثلا با کامند زیر دستور date رو اجرا می کنیم و به یه کاربر ایمیل می کنیم:

date | mail -s datemail user-mail-address

یه جای دیگه اپریتورهای AND (&&) و OR(||) رو معرفی کرده:

command1 && command2

command2 is executed if, and only if, command1 returns an exit status of zero

توضیح میده که کامند دوم در صورتی انجام میشه اگر و تنها اگر کامند اول exit status  صفر بده.
یا بهتر بگم درصورتی کامند دوم رو اجرا میکنه که کامند اول با موفقیت اجرا بشه و اگر command3 && هم وجود دشته باشه در صورتی که کامند اول و دوم با موفقیت اجرا بشن کامند سه رو هم اجرا خواهد کرد.
****************************************************************************************
نکته:
exit status رو می تونیم بعد از هر کامندی استفاده کنیم تا ببینیم اجرای کامند قبلی موفقیت آمیز بوده یا خیر. مثلا کامند date را می زنیم بعد اون میزنیم ?$ echo . اگر صفر بر گردونه نشون میده که کامند به درستی اجرا شده. حالا برای تست میشه dg زد که کامندی به این شکل وجود نداره بعد که ?$ echo رو می زنیم تا exit status رو ببینیم دیگه صفر نیست. و نشون میده که کامند قبل در اجرا مشکل داشته.
****************************************************************************************

command1 || command2 || command3

این هم مثل به OR منطقی عمل می کنه. میگه اگه کامند اول اجرا نشد دومی و اگه اولی و دومی اجرا نشدن سومیو اجرا کن. پس در صورتی که کامند اول اجرا بشه مابقی هیچ وقت اجرا نمی شن.

یکی از مواردی که بهش اشاره شده استفاده از export هستش مثلا می تونیم روی سیستمی که پیش فرض history size ش خیلی کمه و اجازه تغییر اونو توی etc/profile  نداریم می تونیم برای لحظاتی که یه session زدیم به سرور history size  رو به هر عدد دلخواه افزایش بدیم که البته وقتی session ببندیم باز به مقداری که هست برمی گرده:

export HISTSIZE=70








نوع مطلب : manual pages، 
برچسب ها : اطلاعات مفید از manual bash،
لینک های مرتبط :
 
لبخندناراحتچشمک
نیشخندبغلسوال
قلبخجالتزبان
ماچتعجبعصبانی
عینکشیطانگریه
خندهقهقههخداحافظ
سبزقهرهورا
دستگلتفکر


آمار وبلاگ
  • کل بازدید :
  • بازدید امروز :
  • بازدید دیروز :
  • بازدید این ماه :
  • بازدید ماه قبل :
  • تعداد نویسندگان :
  • تعداد کل پست ها :
  • آخرین بازدید :
  • آخرین بروز رسانی :

برای اجرای یک دستور خاص در زمانی مشخص می‌توانید از دستور at استفاده نمایید. مانند:

$ echo 'cp -r /home/* /data/' | at 12:35

برای خواندن خطوطی در فایل‌های متنی که حاوی کلمه خاصی می‌باشد از دستور grep استفاده نمایید. با اضافه کردن گزینه color-- کلمه ممورد نظر بصورت رنگی علامت‌گذاری خواهد شد. مانند:

$ grep --color word /data/myfile

برای ایجاد یک فایل فشرده شده از یک دایرکتوری خاص می‌توانید از دستور زیر استفاده نمایید: $ tar -czf myarchive.tar.gz dirname