פורסם 2011 באפריל 1614 שנים היי,אני קצת לא מבין מה קורה פה: vit@vit-desktop:~$ var1=5vit@vit-desktop:~$ echo $var15vit@vit-desktop:~$ set var1=12vit@vit-desktop:~$ echo $var15 למה זה קורה? איך בעצם מוגדר var1? אני יודע למשתני סביבה יש עדיפות על משתנים לוקליים, אבל בדקתי ב-export ו- var1 לא מופיע שם. תודה רבה על העזרה
פורסם 2011 באפריל 1614 שנים היי,הפקודות SET ובנוסף גם SETENV שייכות למעטפת ה-TCSH, CSH וה-KSH.הפקודה SET שוות ערך למשתנה לוקאלי וSETENV הינה משתנה סביבתי.[root@rtbimages ~]# var1="hello"[root@rtbimages ~]# echo $var1hello[root@rtbimages ~]# tcsh[root@rtbimages ~]# echo $var1var1: Undefined variable.[root@rtbimages ~]# set var1="hi!"[root@rtbimages ~]# echo $var1hi![root@rtbimages ~]#
פורסם 2011 באפריל 1614 שנים לאו דווקא,BASH אמור לדעת לטפל יפה גם בSET.איזה מערכת הפעלה מותקנת אצלך, מה הקרנל ומה הSHELL שאתה נמצא בו?
פורסם 2011 באפריל 1614 שנים אני חוזר בי,במעטפת מסוג BASH תשתמש בEXPORT או VAR= בTCSH, CSH תשתמש בSET וSETENV.אגב,נסה להשתמש גם בDECLARE על מנת להכריז אם המשתנה הוא מסוג INTEGER, TAG וכו'.[root@rtbimages ~]# declare -i test[root@rtbimages ~]# test="hello"[root@rtbimages ~]# echo $test0[root@rtbimages ~]# test="123"[root@rtbimages ~]# echo $test123[root@rtbimages ~]#
פורסם 2011 באפריל 1614 שנים מחבר ה-shell הוא bash.הגרסה של הקרנל היא 2.6.32-24-generic.מערכת ההפעלה היא: Ubuntu 10.04.1 LTS
פורסם 2011 באפריל 1814 שנים set ב bash עושה משהו אחר לגמרי.הוא לא משמש להשמת משתנים, בין אם הם משתני סביבה או לא.כדי להבין מה קרה תוסיף echo $1בסוף הדוגמה שלך.קרא עוד על כך כאן:http://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.