|
![]() |
# 1 |
חבר וותיק
|
בעיה ב- bash
שלום לכולם.
אני מתכנת איזה פאנל בשפת bash. עכשיו אני מנסה לעשות ככה: להכנס ליוזר מסויים דרך הפקודה: su דרך הroot. הוא מצליח להיכנס אבל אחרי שעושים את הפקודה su yoni הוא נותן לנו ככה: קוד:
[yoni@100 root]$ אבל זה לא עושה כלום, אחרי הפקודה אני מנסה להריץ פקודה מסוימת ורק אחרי שאני יוצא מהיוזר היא מופעלת. הנה הקוד להבנה טובה יותר: קוד:
function install { if [ $1 = 2 ]; then echo "Pleas supplied a username [אנא ספק את שם היוזר]" read username clear su $username cd echo "Number servers running [מספר השרתים שרצים ביוזר]:" ps ux | grep hlds_i686 | wc -l exit else echo "בחירה לא טובה, תודה." echo "אתה מנותק מהמערכת" sleep 3 exit read dist install $dist fi } יוני.
__________________
יונתן.
אימייל: jonathan@zeierman.net |
![]() |
![]() |
# 2 |
חבר וותיק
|
הסתדרתי עם הקוד הבא:
קוד:
function install { if [ $1 = 2 ]; then echo "Pleas supplied a username [אנא ספק את שם היוזר]" read username clear cd /home/$username su $username echo "Number servers running [מספר השרתים שרצים ביוזר]:" ps ux | grep hlds_i686 | wc -l exit else echo "בחירה לא טובה, תודה." echo "אתה מנותק מהמערכת" sleep 3 exit read dist install $dist fi } su הוא לא מציג את הפקודה, ז"א רק אחרי שיוצאים מהיוזר רואים את הפקודה. ז"א הוא ממתין עד שאני אצא מהיוזר. יש משהו שאפשר לעשות? יוני.
__________________
יונתן.
אימייל: jonathan@zeierman.net |
![]() |
![]() |
# 3 |
מנהל ראשי
|
אפשר לפתור את זה בצורה יפה (ומעט יותר מאובטחת) ע"י sudo -S
(שמאפשר לקבל את הסיסמא בתור stdin) ממליץ לך לקרוא את הmenual של sudo |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|