انجمنهای فارسی اوبونتو
کمک و پشتیبانی => انجمن عمومی => نویسنده: CodeR در 16 بهمن 1393، 12:11 بظ
-
سلام.
من بوسیله یک دستور تو ترمینال، یک برنامه رو همراه با یکسری پارامتر هایی اجرا میکنم، ولی میخوام بعد از بالا اومدن سیستم عامل، برنامه هم اتوماتیک همراه با اون پارامتر ها اجرا بشه.
کل دستور رو توی فایل rc.local گذاشتم و تست کردم. نتیجه نداد.
-
دستوری که میخوای اجرا بشه رو بذار داخل کران:
@reboot <command>
اگه کار نکرد بذارش داخل یه فایل اجرایی و آدرس اون فایل رو وارد کران بکن.
-
فایل رو هم امتحان کردم نتیجه نداشت ..
دستور به این صورت وارد شده :
@reboot bash /home/test/test.sh
-
نیازی به اون bash نیست:
@reboot /home/test/test.sh
-
بدون "bash" هم امتحان کردم ولی نتیجه ای نداشت. مربوط به دستور نیست.. چون cron کاری که قراره انجام بده رو انجام میده . فکر کنم اون دستور درست اجرا نمیشه یا حداقل میتونم بگم که تو اجرا شدنش مشکلی وجود داره، چون :
وقتی اون دستور اجرا بشه کلا ترمینال رو اشغال میکنه چون اون برنامه در حال اجراست و ترمینال آزاد نیست. دقیقا مثل دستور gksudo که وقتی اجرا بشه ترمینال درگیر همون دستوره و با بستن ترمینال دستور gksudo هم لغو میشه.
که حدس میزنم ۱۰۰٪ مشکل از همین قسمت باشه ..
-
راه حلی هست ؟
-
شما که خودت گفتی مشکل چیه. خب دستور رو اصلاح کن. یا لااقل متنشو میذاشتی تو انجمن. از کجا بدونیم راه حلش چیه؟!
-
یه دستوری رو میخوام که :
۱ - ترمینال رو باز کنه
۲ - خودش اون کامند رو توی ترمینال بنویسه و Enter بزنه.
۳ - حالا ترمینال رو close کنه.
و تمام.
-
چه نیازی هست که حتما ترمینال باز و بسته بشه؟
-
تو حالت دستی : وقتی ترمینال باز میشه و همون کامند وارد میشه، برنامه شروع به کار میکنه و بعدش هم که ترمینال بسته بشه مشکلی هم پیش نمیاد.
حالا همین کامند توی cron کار نمیکنه!