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

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

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

نویسنده موضوع: مشکل در تکه کد  (دفعات بازدید: 5164 بار)

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

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
مشکل در تکه کد
« : 08 فروردین 1396، 10:03 ب‌ظ »
سلام میخوام لطف کنید کمک کنید این کار رو انجام بدم

فرض کنین در بش اسکریپت میخوام مثلا این مقادیر رو بعنوان متغیر بدم

a=34
b=32

حالا مثلا وقتی کاربر کلمه ab رو به همین صورت که نوشتم وارد کرد بش اسکریپت براش اینو چاپ کنه

3432

خب اینو چطوری اینکارو کنم؟
منظورم واضح بود درسته؟ حالا لطفا راهنمایی بفرمایید

آفلاین سعيد

  • Sr. Member
  • *
  • ارسال: 296
پاسخ : مشکل در تکه کد
« پاسخ #1 : 08 فروردین 1396، 10:16 ب‌ظ »
با if  می شه این کا رو انجام داد

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
پاسخ : مشکل در تکه کد
« پاسخ #2 : 08 فروردین 1396، 10:45 ب‌ظ »
با if  می شه این کا رو انجام داد
سلام شما جای من بودی متوجه میشدی؟
برادر عزیز توی کد توضیح بدین چی میشه خب
منم راهنمایی میخوام که مطرح کردم

آفلاین Ma$oud

  • Sr. Member
  • *
  • ارسال: 293
  • جنسیت : پسر
پاسخ : مشکل در تکه کد
« پاسخ #3 : 08 فروردین 1396، 10:59 ب‌ظ »
سلام میخوام لطف کنید کمک کنید این کار رو انجام بدم

فرض کنین در بش اسکریپت میخوام مثلا این مقادیر رو بعنوان متغیر بدم

a=34
b=32

حالا مثلا وقتی کاربر کلمه ab رو به همین صورت که نوشتم وارد کرد بش اسکریپت براش اینو چاپ کنه

3432

خب اینو چطوری اینکارو کنم؟
منظورم واضح بود درسته؟ حالا لطفا راهنمایی بفرمایید

خب این با if هستش : a=34
b=32

read -p "give me some letters: " $let

if [ "$let" == "ab" ]; then
echo "$a$b"
fi

و اگه می خواید تعداد زیادی رو راحتتر چک کنید از این استفاده کنید: a=34
b=32
c=36
d=40

read -p "give me some letters: " $let

case $let in
"ab" ) echo "$a$b";;
"ac" ) echo "$a$c";;
"ad" ) echo "$a$d";;
"bc" ) echo "$b$c";;
"bd" ) echo "$b$d";;
# and so on...
esac

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
پاسخ : مشکل در تکه کد
« پاسخ #4 : 08 فروردین 1396، 11:03 ب‌ظ »
سلام میخوام لطف کنید کمک کنید این کار رو انجام بدم

فرض کنین در بش اسکریپت میخوام مثلا این مقادیر رو بعنوان متغیر بدم

a=34
b=32

حالا مثلا وقتی کاربر کلمه ab رو به همین صورت که نوشتم وارد کرد بش اسکریپت براش اینو چاپ کنه

3432

خب اینو چطوری اینکارو کنم؟
منظورم واضح بود درسته؟ حالا لطفا راهنمایی بفرمایید

خب این با if هستش : a=34
b=32

read -p "give me some letters: " $let

if [ "$let" == "ab" ]; then
echo "$a$b"
fi

و اگه می خواید تعداد زیادی رو راحتتر چک کنید از این استفاده کنید: a=34
b=32
c=36
d=40

read -p "give me some letters: " $let

case $let in
"ab" ) echo "$a$b";;
"ac" ) echo "$a$c";;
"ad" ) echo "$a$d";;
"bc" ) echo "$b$c";;
"bd" ) echo "$b$d";;
# and so on...
esac

بسیار ممنونم.
حالا برعکس اینکار چطور ممکن است؟
مثلا کاربر 3432 وارد بکند بش هم برگرده و ab براش چاپ کنه

آفلاین سعيد

  • Sr. Member
  • *
  • ارسال: 296
پاسخ : مشکل در تکه کد
« پاسخ #5 : 08 فروردین 1396، 11:10 ب‌ظ »
با یه if دیگه :P

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
پاسخ : مشکل در تکه کد
« پاسخ #6 : 08 فروردین 1396، 11:17 ب‌ظ »

آفلاین nixoeen

  • ناظر انجمن
  • *
  • ارسال: 4869
  • جنسیت : پسر
  • masoft قدیم
پاسخ : مشکل در تکه کد
« پاسخ #7 : 08 فروردین 1396، 11:25 ب‌ظ »
ای بابا. چجور خب
احتمالا بهتر هست که کمی در مورد Bash Scripting مطالعه کنید و تنها مشکلاتتون رو بپرسید، نه اینکه بخواید فرد دیگه‌ای همه‌ی کد رو براتون بنویسه. برای مثال: لینک

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
پاسخ : مشکل در تکه کد
« پاسخ #8 : 08 فروردین 1396، 11:30 ب‌ظ »
سوال آخرم
برای اینکه درخاستی به سمت یک صفحه وب بفرستیم دستوزش اینه؟

Curl http://mysite.ir/page.php?id=2e

؟؟

آفلاین فاروق

  • Hero Member
  • *
  • ارسال: 992
  • جنسیت : پسر
  • <شعار>این یک شعار است</شعار>
    • تارنمای فاروق
پاسخ : مشکل در تکه کد
« پاسخ #9 : 08 فروردین 1396، 11:36 ب‌ظ »
سوال آخرم
برای اینکه درخاستی به سمت یک صفحه وب بفرستیم دستوزش اینه؟

Curl http://mysite.ir/page.php?id=2e

؟؟
منظورتون از درخواست چه نوع درخواستی هست؟http؟
خوندن این هم میتونه مفید باشه:
man curl
http://pcworms.blog.ir
بعد از بررسی پست های قدیمیم، فکر میکنم یک عذرخواهی بدهکارم! معذرت میخوام و اگر اشتباه کردم مستقیم و روشن راهنمایی کنید تا تکرار نکنم.
کانال IRC

آفلاین فاروق

  • Hero Member
  • *
  • ارسال: 992
  • جنسیت : پسر
  • <شعار>این یک شعار است</شعار>
    • تارنمای فاروق
پاسخ : مشکل در تکه کد
« پاسخ #10 : 08 فروردین 1396، 11:38 ب‌ظ »
راستی چرا توی انجمن دبیان تاپیک باز کردید؟
http://pcworms.blog.ir
بعد از بررسی پست های قدیمیم، فکر میکنم یک عذرخواهی بدهکارم! معذرت میخوام و اگر اشتباه کردم مستقیم و روشن راهنمایی کنید تا تکرار نکنم.
کانال IRC

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
پاسخ : مشکل در تکه کد
« پاسخ #11 : 08 فروردین 1396، 11:47 ب‌ظ »
راستی چرا توی انجمن دبیان تاپیک باز کردید؟
توزیعم بر پایه دبیانه

آفلاین Ma$oud

  • Sr. Member
  • *
  • ارسال: 293
  • جنسیت : پسر
پاسخ : مشکل در تکه کد
« پاسخ #12 : 09 فروردین 1396، 12:04 ق‌ظ »
بسیار ممنونم.
حالا برعکس اینکار چطور ممکن است؟
مثلا کاربر 3432 وارد بکند بش هم برگرده و ab براش چاپ کنه

بهترین کاری که من بلد بودم این بود:  :P #!/bin/bash

read -p "give me some numbers: " num

echo -e "\n"

for number1 in {2..100..2}; do
    if [ "$(echo $num | wc -m)" -lt "$number1" ]; then
        break
    fi
    number2=$(expr $number1 - 1)
    numi=$(echo $num | cut -b -$number1 | cut -b $number2-)
    case $numi in
        "34"    )   printf "a";;
        "32"    )   printf "b";;
        "36"    )   printf "c";;
    esac
done

echo -e "\n"

محدودیتش رو هم می تونید از {2..100..2} افزایش بدید و ۱۰۰ رو هرچقدر بیشتر کنید بیشتر می تونید عدد ۲ رقمی استخراج کنید
و خب فقط روی اعداد ۲ رقمی کار می کنه!  ;D

آفلاین Ma$oud

  • Sr. Member
  • *
  • ارسال: 293
  • جنسیت : پسر
پاسخ : مشکل در تکه کد
« پاسخ #13 : 09 فروردین 1396، 12:06 ق‌ظ »
راستی چرا توی انجمن دبیان تاپیک باز کردید؟
توزیعم بر پایه دبیانه

خب چه ربطی داره! این کامندا روی آرچ یا اوبونتو کار نمی کنه؟

آفلاین rahimi12

  • Full Member
  • *
  • ارسال: 228
  • جنسیت : دختر
پاسخ : مشکل در تکه کد
« پاسخ #14 : 09 فروردین 1396، 12:14 ق‌ظ »
دیگ ببخشین اگ جای نامناسبی موضوع باز کردم