انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید


ارائه ۲۴٫۱۰ اوبونتو منتشر شد 🎉

نویسنده موضوع: نحوه اجرای برنامه ها پشت سر هم بدون نیاز به دستور  (دفعات بازدید: 2645 بار)

0 کاربر و 4 مهمان درحال مشاهده موضوع.

آفلاین mrmrn

  • High Hero Member
  • *
  • ارسال: 1490
  • جنسیت : پسر
  • آقا مرتضی
بسم الله.
سلام.
ما تو دانشگاهمون چندین عدد کامپیوتر 8 هسته ای داریم که برا محاسبات سنگین بهشون نیاز داریم.مسئله اینه که ما فقط میتونیم وقتی داخل دانشگاهیم ازشون استفاده کنیم.
میخوام بدونم تو تر مینال چکار میشه کرد که بفهمه بعد از اینکه دستور اول رو اجرا کرد اونوقت بره دومی و سومی و...رو اجرا کنه؟؟
تا همینجا رو اگه جواب بگیرم کلی از برنامه جلو میافتیم چون شبها کامپیوترامون بیکاره.
حالا سوال رو عوض میکنم.فعلا ما نیاز نداریم که مثلا خروجی اولی بشه ورودی دومی و ...
ولی اگه یه روزی چنین نیازی داشتیم چکار باید بکنیم؟
« آخرین ویرایش: 25 مهر 1389، 08:06 ب‌ظ توسط mrmrn »
پدرم به رحمت خدا رفتن. شادی روحش صلوات.

آفلاین amirhomayoun

  • Full Member
  • *
  • ارسال: 106
نقل‌قول
تو تر مینال چکار میشه کرد که بفهمه بعد از اینکه دستور اول رو اجرا کرد اونوقت بره دومی و سومی و...رو اجرا کنه؟

first_command ; second_command ; third_command

نقل‌قول
خروجی اولی بشه ورودی دومی

first_command | second_command | third_command
« آخرین ویرایش: 25 مهر 1389، 09:00 ب‌ظ توسط amirhomayoun »

آفلاین Aref

  • Full Member
  • *
  • ارسال: 116
  • جنسیت : پسر
  • شهید پرفسور مجید شهریاری
با سلام
اگر منظور شما رو درست فهمیده باشم شما یک تعداد دستورات اجرایی لینوکسی دارید که در ترمینال اجرا میکنید (مثلا برنامه فلان رو اجرا کن- بعد خروجیها رو مثلا کپی کن و غیره)
یعنی به بیان بهتر میخواهید یک سری کارها رو اتوماتیک انجام بدهد.
خوب اصولی ترین و بهترین راه استفاده از Bash file  و در واقع shell scripting است. تمامی دستوراتی که می خواهید به ترتیب اجرا شود را درون یک فایل متنی وارد کنید و به راحتی آن را اجرا کنید (البته باید خط اول فایل را اصلاح کنید)
 اگر در وسط کار نیاز به پردازش داده ها نیز دارید می توانید از هر زبان برنامه نویسی که دوست دارید و به کارتان می خورد استفاده کنید. و آن را با دستور مناسب درون  bash file خود فراخوانی و اجرا کنید.
ناگفته نماند Bash یکی از معروفترین ومتداولترین shell های موجود برای لینوکس و BSD است. در واقع یک زبان برنامه نویسی است که میتوانید از حلقه و شرط و ... نیز در آن استفاده کنید.
برای کسب اطلاعات بیشتر و بهتر به لینکهای زیر مراجعه کنید:
http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html#toc9
http://tldp.org/LDP/abs/html/
http://www.freeos.com/guides/lsst/

آفلاین abdozzahra

  • Sr. Member
  • *
  • ارسال: 346
  • جنسیت : پسر
  • شهید عماد مغنیه-استاد آموزش عملیات استشهادی
نقل‌قول
تو تر مینال چکار میشه کرد که بفهمه بعد از اینکه دستور اول رو اجرا کرد اونوقت بره دومی و سومی و...رو اجرا کنه؟

first_command ; second_command ; third_command

نقل‌قول
خروجی اولی بشه ورودی دومی

first_command | second_command | third_command

جسارتا:
اگه میخواید درصورت موفق آمیز بودن اولی , دومی اجرا بشه باید بزنید 
first_command && second_command && third_command
و در صورت عدم موفقیت دستور دیگری اجرا شود:

first_command|| second_command || third_command
آغاز علم آن است که بفهمی(تاکید میکنم بفهمی!) خدا مخلوق دیگه هم غیر از تو داره! با سلیقه های دیگه. و  آغاز ادب نیز آن است که به نظرات بقیه مخلوقات احترام بذاری

در این دو حالت علم و ادب با هم خوب است

شما مجاز به استفاده از آواتاری نیستید که نذاره شب بچه مردم بخوابه

آفلاین mrmrn

  • High Hero Member
  • *
  • ارسال: 1490
  • جنسیت : پسر
  • آقا مرتضی
مرسی بابت پاسخهاتون.هم از امیر آقا هم عبدالزهرا و هم دوست خودم عارف عزیز.
ما تو کارمون عدم موفقیت نداریم.چون برناممون یک سری محاسبات سنگین و نه پیچیده ریاضی رو انجام میده و در نهایت یه جوابی بهمون میده.ولی یه سوال،این که گفتین 
نقل‌قول
و در صورت عدم موفقیت دستور دیگری اجرا شود:
یعنی چی؟یکم کژتابی داره!!
پدرم به رحمت خدا رفتن. شادی روحش صلوات.

آفلاین abdozzahra

  • Sr. Member
  • *
  • ارسال: 346
  • جنسیت : پسر
  • شهید عماد مغنیه-استاد آموزش عملیات استشهادی
هر دستوری یک کد خروجی داره که با echo $? قابل مشاهده است

قسمت اول دستور && هنگامی اجرا میشود که  $? برابر صفر و || هنگامی اجرا میشود که  $? غیر صفر باشد

به عبارت دیگه به معنای else در برنامه نویسی است مثلا کد زیر:
code 1&& code 2 || code 3
معادل دستور زیر است

if code 1
then
code 2
else
code 3
fi
آغاز علم آن است که بفهمی(تاکید میکنم بفهمی!) خدا مخلوق دیگه هم غیر از تو داره! با سلیقه های دیگه. و  آغاز ادب نیز آن است که به نظرات بقیه مخلوقات احترام بذاری

در این دو حالت علم و ادب با هم خوب است

شما مجاز به استفاده از آواتاری نیستید که نذاره شب بچه مردم بخوابه

آفلاین mrmrn

  • High Hero Member
  • *
  • ارسال: 1490
  • جنسیت : پسر
  • آقا مرتضی
چه عالی.
مرسی از همگی شما رفقا.
پدرم به رحمت خدا رفتن. شادی روحش صلوات.