انجمنهای فارسی اوبونتو
تازه کار => انجمن تازهکاران => نویسنده: Thomson در 28 دی 1393، 03:40 بظ
-
سلام دوستان خوبم!
من اومد یک فایل رو به این ترتیب در دایرکتوری /home/API ( esme userame)
به این شکل ساختم cat > prog
و بعد برای مثال نوشتم داخلش hello ubuntu
و بعد هم ctrl+c
و در نهایت بهش execute premssion دادم chmod +x
حالا اومدم اون رو به این طریق اجرا کنم که محتوارو برام نمایش بده
./prog
اما این خطا رو میده
./prog: line 1: hello: command lot found
دوستان چرا اجرائی نشد؟ مشکل کجا بود و اگر ممکنه بگید که چطور حلش کنم
-
دقیقاً همون کاری که گفتی رو داره انجام میده! مشکلت چی هست؟
بهش گفتی hello ubuntu رو به عنوان یک دستور توی ترمینال اجرا کن، اون هم داره همین کار رو میکنه ولی میگه که من دستوری به اسم hello نمیشناسم.
-
من میخواستم یک فایل رو بسازم که داخلش یک جمله رو بنویسم، و بعد از اینکه اون رو کامپایل کردم متن رو بهم نمایش بده.. مثلا همین hello ubuntu رو بهم نمایش بده..
ممکنه بگید چطور باید این کار رو کنم؟ و درواقع اشکالم کجا بود؟
-
من میخواستم یک فایل رو بسازم که داخلش یک جمله رو بنویسم، و بعد از اینکه اون رو کامپایل کردم متن رو بهم نمایش بده.. مثلا همین hello ubuntu رو بهم نمایش بده..
ممکنه بگید چطور باید این کار رو کنم؟ و درواقع اشکالم کجا بود؟
دوست عزیز شما باید متناسب با زبانی برنامه نویسی که میخواید باهاش کار کنید، اصولی را رعایت کنید.
شما اول مشخص کنید که چه زبانی می خواید برنامه نویسی کنید، تا بهتر راهنمایی بشید.
در اینجا من در نظر میگیرم که شما میخواید Shell Script بنویسید.
کد زیر را ذخیره نمایید و اجرا کنید تا Hello World! برای شما نمایش داده شود:
#!/bin/bash
echo "Hello World!"
آموزش Shell Script ساده: http://bash.cyberciti.biz/guide/Hello,_World!_Tutorial
-
بله همین رو هم با Shell scripting نوشتم ( echo رو یادم رفته بود توی اولین پست تاپیک بگم که نوشتمش)
اما من میخوام وقتی ./prog
رو که میزنم کامپایل بشه و متن منو نشون بده.
اما اون ارور اولی رو نشونم میده.. نمیدونم چیکارش کنم
-
تو هنوز توی مبانی مشکل داری. اول یک خورده مطالعه کن بعد شروع به برنامهنویسی کن. زبون بش کامپایلی نیست.
در ضمن غیرممکن هست این چیزی که شما میگی، اگه echo رو نوشته بودی که دیگه نمیخواست hello رو اجرا کنه.
-
بله همین رو هم با Shell scripting نوشتم ( echo رو یادم رفته بود توی اولین پست تاپیک بگم که نوشتمش)
اما من میخوام وقتی ./prog
رو که میزنم کامپایل بشه و متن منو نشون بده.
اما اون ارور اولی رو نشونم میده.. نمیدونم چیکارش کنم
لطفا فایلی را که ساختید در اینجا قرار دهید.
-
من قصدم برنامه نویسی Shell scripting نبود اصلا. فقط میخواستم با همین مبانی که میفرمایید آشنا بشم.
====================================
منظورتون دستوراتی که زدم هستش؟
-
من قصدم برنامه نویسی Shell scripting نبود اصلا. فقط میخواستم با همین مبانی که میفرمایید آشنا بشم.
تو هنوز توی مبانی مشکل داری. اول یک خورده مطالعه کن بعد شروع به برنامهنویسی کن. زبون بش کامپایلی نیست.
منظورتون دستوراتی که زدم هستش؟
بله
-
کلا ایمهارو زدم :
cat > prog
و بعد :
echo hello ubuntu
و بعد ctrl + c
و بعد execute prem دادم :
chmod +x prog
و بعد اومدن اجراش کنم با دستور ./prog
خطایی رو که خدمتتون عرض کردم رو بهم داد..
-
کلا ایمهارو زدم :
cat > prog
و بعد :
echo hello ubuntu
و بعد ctrl + c
و بعد execute prem دادم :
chmod +x prog
و بعد اومدن اجراش کنم با دستور ./prog
خطایی رو که خدمتتون عرض کردم رو بهم داد..
دوست عزیز قصد جسارت ندارم، اگر یک مقدار دقت کنید، و کد خودتان را با کدی که برایتان قرار داده بودم مقایسه کنید، متوجه مشکل میشوید.
شما برای چاپ کردن مقدار مورد نظر آن را در double quotes ( دابل کوتیشن ) قرار دهید.
یعنی به جای
echo hello ubuntu
از
echo "hello ubuntu"
استفاده کنید.
-
نه چه جسارتی دوست من! من از "text" اطلاع نداشتم، خیلی ممنونم از راهنماییتون مشکل حل شد.
(اگر عالم بودم که سوال نمیکردم ) :)
-
(اگر عالم بودم که سوال نمیکردم ) :)
دوست عزیز همانطور که اشاره کردم
اگر یک مقدار دقت کنید
همیشه مشکلاتتان در جلوی چشمان شما هستند.
من خیلی موارد را مشاهده کردم، که فقط بخاطر یک character کم یا زیاد باعث خراب شدن برنامه شده اند.
به شخصه بهم ثابت شده که در هر کاری ( حتی برای آزمایش ) " دقت " جایگاه بسیار مهمی داره و در بیشتر مواقعه حرف اول را میزنه.
اگر باعث ناراحتی شما شدم، پوزش می خوام :oops:
نه چه جسارتی دوست من! من از "text" اطلاع نداشتم
باز هم قصد جسارت ندارم، اما همانطور که قبلا " سلمان م. " هم فرمودند:
اول یک خورده مطالعه کن بعد شروع به برنامهنویسی کن.
در مطالب آموزشی به تمام مواردی که اطاع ندارید، اشاره شده است.
خیلی ممنونم از راهنماییتون مشکل حل شد.
موفق و پیروز باشید