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

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

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


توزیع گنو/لینوکس اوبونتو ۲۰ ساله شد 🎉

نویسنده موضوع: یه سوال در مورد اسکریپت نویسی توی bash [حل شد]  (دفعات بازدید: 1186 بار)

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

آفلاین Silvio Dante

  • High Hero Member
  • *
  • ارسال: 1221
  • جنسیت : پسر
  • Arch Linux
    • وبلاگ شخصی
سلام
یه اسکریپتی نوشتم که توش یه متغیر دارم که حاوی اسم یه سری فایله. این متغیر رو به این صورت تبدیل به لیست کردم:
set -- name_of_variableحالا که میخوام فراخوانیش کنم مثلا آیتم چهارمشو بخوام اینجوری میتونم فراخوانیش کنم:
$4میخوام از آیتمای این لیست داخل یه حلقه استفاده کنم و هر دفعه یکیشو داشته باشم. برای این کار یه متغیر با مقدار صفر تعریف کردم که هر دفعه یدونه به مقدارش اضافه میشه. حالا میخوام این عدد رو هر دفعه بزارم جلوی $ که بتونم اون آیتم از داخل لیست رو فراخوانی کنم. این کار رو کردم:
"$""$mynumber"mynumber متغیریه که برای اعداد تعیین کردم.
اما خروجیش به جای اینکه هر دفعه پارامترای اون لیست باشه یه $ به همراه عددیه که تو اون دور حلقه وجود داره یه چیزی مثل این:
$1
$2
$3
$4
$5
$6

حالا شاید این وسط براتون سوال پیش بیاد که خب چرا نمیام از حلقه استفاده کنم؟ جواب اینه که قبلا از یه حلقه استفاده کردم و میخوام آیتمای این لیست هم همزمان در کنار آیتمای متغیری که به اون حلقه دادم بیان روی کار. یعنی در واقع توی هر دور حلقه‌م میخوام دوتا مقدار از داخل دوتا متغیر به صورت همزمان روی کار بیان. یعنی وقتی پارامتر اول از اولین متغیر روی کاره اولین پارامتر متغیر دوم هم در کنارش باشه و به همین صورت تا آخر پیش برن که متغیر اول رو همونطور که گفتم توی حلقه‌ی for گذاشتم اما خب با حلقه‌ها هر طوری فکر میکنم نمیشه همزمان دوتا متغیر رو آیتم‌هاشون رو استفاده کرد. برای همین یکی رو توی حلقه گذاشتم و برای اون یکی سعی کردم از اون روش لیست استفاده کنم.

امیدوارم با این توضیح داغون من گیج نشده باشین.
شاید این عکس بتونه تو فهمیدن این‌که منظورم چیه بیشتر کمکتون کنه:


الان سوالم اینه که راه حلی وجود داره که بشه دوبار از $ جوری استفاده کرد که در نتیجه بتونم پارامترای این لیستی که درست کردم رو داخل حلقه هر دفعه یکیشو فراخوانی کنم؟ (با استفاده از اون متغیر عدد)
یا اینکه آیا راه حل دیگه‌ای برای این کار سراغ دارین؟
« آخرین ویرایش: 05 اسفند 1396، 03:56 ب‌ظ توسط مهران :) »
به ما نگفته بودند ایران در زمان احمدشاه قاجار چگونه بوده است. همیشه به ما دادند، ما هم فکر کردیم باید می‌داده‌اند و تازه خیال می‌کردیم کم‌مان است باز هم می‌خواستیم!!
فریدون فرخزاد

آفلاین mahrooz

  • Newbie
  • *
  • ارسال: 14
پاسخ : یه سوال در مورد اسکریپت نویسی توی bash
« پاسخ #1 : 05 اسفند 1396، 01:27 ب‌ظ »
سلام
باید از ارجاع غیرمستقیم استفاده کنید.سری به این صفحه بزن http://absguide.blogsky.com/ivr

آفلاین Silvio Dante

  • High Hero Member
  • *
  • ارسال: 1221
  • جنسیت : پسر
  • Arch Linux
    • وبلاگ شخصی
پاسخ : یه سوال در مورد اسکریپت نویسی توی bash
« پاسخ #2 : 05 اسفند 1396، 03:56 ب‌ظ »
سلام
باید از ارجاع غیرمستقیم استفاده کنید.سری به این صفحه بزن http://absguide.blogsky.com/ivr
تشکر <3
به ما نگفته بودند ایران در زمان احمدشاه قاجار چگونه بوده است. همیشه به ما دادند، ما هم فکر کردیم باید می‌داده‌اند و تازه خیال می‌کردیم کم‌مان است باز هم می‌خواستیم!!
فریدون فرخزاد