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

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

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


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

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

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

آفلاین moslem.b

  • High Sr. Member
  • *
  • ارسال: 590
  • جنسیت : پسر
خوب درست شد من یه تیکشو جا انداخته بودم

اولی فکر کنم بهتر باشه چون وقتی با لایو سی دی بالا میایم یوزر معمولیه روت نیست واسه یه تازه کارم مشکله بهش بگی بیا برو روت شو بعد انجامش بده فکر کنم همین که بهش بگیم با sudo اجراش کن راحت تر باشه

اینم خروجی من

نقل‌قول
mse@mse-desktop:~/Desktop$ sudo ./test.sh
Probing devices to guess BIOS drives. This may take a long time.
Probing devices to guess BIOS drives. This may take a long time.

       [ Minimal BASH-like line editing is supported.   For
         the   first   word,  TAB  lists  possible  command
         completions.  Anywhere else TAB lists the possible
         completions of a device/filename. ]
grub> root (hd0,8)
grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Checking if "/boot/grub/e2fs_stage1_5" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  16 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd0) (hd0)1+16 p (hd0,8)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
grub> quit
(\__/)
(='.'=)
(")_(")

آفلاین Behnam Golds

  • High Hero Member
  • *
  • ارسال: 1368
  • جنسیت : پسر
خوب توی cd live  هم باید sudo بزنی ولی پسورد نمیخواد ازت . شما وقتی sudo میزنی در واقع داری به صورت موقت سوئیچ میکنی به کاربر root ، خروجی این دوتا دستور رو توی ترمینال بزن قضیه روشن میشه :

whoami
و

sudo whoami
ضمنا سورش بازه هرطور خواستی عوضش کن. تحت مجوز GPL v3  و احتمالا نسخه های بعدی   ;)

آفلاین moslem.b

  • High Sr. Member
  • *
  • ارسال: 590
  • جنسیت : پسر
یه فرمان آخرش اضافه کردم واسه محکم کاری  ;D

نقل‌قول
#!/bin/bash
 set `{
grub --batch  <<EOF |grep  \(hd[0-9],[0-9]\)
find /boot/grub/stage1
quit
EOF
}`

syspart=$1
set `expr substr $syspart 2 3`
sysdev=$1

{
grub --batch  <<EOF
root $syspart
setup ($sysdev)
quit
EOF
}
update-grub

به نظرت چیزی کم نداره ؟
(\__/)
(='.'=)
(")_(")

آفلاین moslem.b

  • High Sr. Member
  • *
  • ارسال: 590
  • جنسیت : پسر
ضمنا سورش بازه هرطور خواستی عوضش کن. تحت مجوز GPL v3  و احتمالا نسخه های بعدی   ;)

با نسخه های بعدی موافقم  :D
(\__/)
(='.'=)
(")_(")

آفلاین Behnam Golds

  • High Hero Member
  • *
  • ارسال: 1368
  • جنسیت : پسر
فکر نکنم چیزی کم داشته باشه فقط اگر میتونستیم اون  خط اول رو از خروجی حذف کنیم خوب می‌شد.

آفلاین moslem.b

  • High Sr. Member
  • *
  • ارسال: 590
  • جنسیت : پسر
خوب کاملتر شد یه reboot now هم اضافه کردم

نقل‌قول
#!/bin/bash
 set `{
grub --batch  <<EOF |grep  \(hd[0-9],[0-9]\)
find /boot/grub/stage1
quit
EOF
}`

syspart=$1
set `expr substr $syspart 2 3`
sysdev=$1

{
grub --batch  <<EOF
root $syspart
setup ($sysdev)
quit
EOF
}
update-grub
reboot now

اون خطه رو هم نمیدونم باش ور میرم بینم میشه کاریش کرد یا نه
(\__/)
(='.'=)
(")_(")

آفلاین deprecated

  • Jr. Member
  • *
  • ارسال: 99
نقل‌قول از: Behnam Golds
اگر خط آخر یعنی echo رو حذف کنی متوجه میشی که  بازم خط زیر نمایش داده میشه که نمیدونم چطور حذفش کنم :
کد:

Probing devices to guess BIOS drives. This may take a long time.

البته مهم نیست مشکلی ایجاد نمیکنه .
بسیار مطالب خوب و سودمندی بود :)
خواستم بگم که برای خطی که نباید نمایش بده، چون به خروجی استاندارد خطا میره پس باید خروجی استاندارد خطا رو به null بفرستیم. و یک سوال؟ چرا خروجی دستور grub رو مستقیم تو متغیر نمیریزی؟ واسه این دو حالت کد اول این شکلی میشه:
#!/bin/bash

sysdev=`{
grub --batch  <<EOF |grep  \(hd[0-9],[0-9]\)
find /boot/grub/stage1
quit
EOF
} 2> /dev/null`
echo $sysdev

آفلاین Behnam Golds

  • High Hero Member
  • *
  • ارسال: 1368
  • جنسیت : پسر
پاسخ به: درخواست راهنمایی واسه نوشتن یه اسک&
« پاسخ #22 : 20 بهمن 1387، 12:56 ب‌ظ »
خوبه reboot  بشه ولی اینجوری کاربر می‌ترسه فکر میکنه کامپیوترش سوخته  :D  بهتر نیست قبلش از کاربر بپرسه که میخواد اینکارو بکنه یا نه؟
میتونی به جای reboot now  این چند خط رو بذاری :

echo ""
echo "Changes will take effect after reboot"
echo "Do you want to reboot now?<y/n>"
read -n 1 answer
echo ""
if [ "$answer" = "y" ] || [ "$answer" = "Y" ] || [ "$answer" = "" ];
then
reboot now
fi
« آخرین ویرایش: 20 بهمن 1387، 01:23 ب‌ظ توسط Behnam Golds »

آفلاین Behnam Golds

  • High Hero Member
  • *
  • ارسال: 1368
  • جنسیت : پسر
پاسخ به: درخواست راهنمایی واسه نوشتن یه اسک&
« پاسخ #23 : 20 بهمن 1387، 01:00 ب‌ظ »
PC2st.ir  جان دستت درد نکنه ، چند بار این <2  رو امتحان کردم ولی بعد از grep گذاشته بودم دستت درد نکنه .

#!/bin/bash
set `whoami`

if [ "$1" != "root" ];
then
echo "Permission denied: You must be root"
exit
fi

syspart=`{
grub --batch  <<EOF |grep  \(hd[0-9],[0-9]\)
find /boot/grub/stage1
quit
EOF
} 2> /dev/null`

set `expr substr $syspart 2 3`
sysdev=$1

{
grub --batch  <<EOF
root $syspart
setup ($sysdev)
quit
EOF
} 2> /dev/null

echo ""
echo "Changes will take effect after reboot"
echo "Do you want to reboot now?<y/n>"
read -n 1 answer
echo ""
if [ "$answer" = "y" ] || [ "$answer" = "Y" ] || [ "$answer" = "" ];
then
reboot now
fi

exit
« آخرین ویرایش: 20 بهمن 1387، 01:22 ب‌ظ توسط Behnam Golds »

آفلاین moslem.b

  • High Sr. Member
  • *
  • ارسال: 590
  • جنسیت : پسر
عجب اسکریپتی شد  :D

ایول آقا خیلی خوب شده بازم ادامش بدیم هنوزم کار داره ها

بینم با فرمان cut -n نمیشه همه ی متن رو پاک کرد که خروجی رو صفحه نشون نده ؟
« آخرین ویرایش: 20 بهمن 1387، 08:18 ب‌ظ توسط moslem.b »
(\__/)
(='.'=)
(")_(")

آفلاین Freeman

  • High Hero Member
  • *
  • ارسال: 2310
    • KDE Software Compilation
مسلم و بهنام عزیز فوق العاده تاپیک مفیدی ایجاد کردین کارتون بسیار زیباست 1+++  زیبایی فرهنگ اوپن سورس رو میشه بخوبی اینجا دید تشکر

موفق باشین

آفلاین moslem.b

  • High Sr. Member
  • *
  • ارسال: 590
  • جنسیت : پسر
مسلم و بهنام عزیز فوق العاده تاپیک مفیدی ایجاد کردین کارتون بسیار زیباست 1+++  زیبایی فرهنگ اوپن سورس رو میشه بخوبی اینجا دید تشکر

موفق باشین

قربونت داداش حسن  ;)

PC2st.ir هم کمک خوبی کرد دستش درد نکنه

آقا هر کی ایده ایی پیشنهادی واسه کاملتر کردنش داره بده
(\__/)
(='.'=)
(")_(")

آفلاین Farshid

  • High Sr. Member
  • *
  • ارسال: 613
  • جنسیت : پسر
مسلم و بهنام عزیز فوق العاده تاپیک مفیدی ایجاد کردین کارتون بسیار زیباست 1+++  زیبایی فرهنگ اوپن سورس رو میشه بخوبی اینجا دید تشکر

موفق باشین

قربونت داداش حسن  ;)

PC2st.ir هم کمک خوبی کرد دستش درد نکنه

آقا هر کی ایده ایی پیشنهادی واسه کاملتر کردنش داره بده
دورد

بهنام جان رو سفیدم کردی :D هی به مسلم می‌گم برو تاپیک بزن تو انجمن...

ببخشید که پیوستگی مطلبتون رو بهم ریختم ادامه بدید ما هم داریم استفاده می کنیم. ممنونم از همتون ;)
معنای واقعی اوبونتو این است که "آدمی به کمک انسانهای دیگر به گوهر آدمیت میرسد"

آفلاین Behnam Golds

  • High Hero Member
  • *
  • ارسال: 1368
  • جنسیت : پسر
لطف دارین همتون مرسی... من هم کلی حال کردم ، البته تا یه اسکریپت واقعی خیلی فاصله داره ولی همین حس و حال اپن سورسی پشتش خیلی لذت بخش بود.  ;D