script unix

script unix

שלום לכולם, אני צריך לכתוב script ביוניקס שלוקח את המשתנה PATH כותב אותו לקובץ לאחר מכן הופך את סדר הספריות במשתנה PATH וכותב את ה-PATH ההפוך גם כן לקובץ... החלק הראשון הוא פשוט: echo $PATH>file.txt אותו דבר אני מניח שעושים בסוף... מה שאני לא יודע זה איך לפרק את ב-PATH ולהפוך את סדר הספריות... אשמח עם מישהו יוכל לתת לי הכוונה. תודה מראש על כל עזרה....
 

Scipio

New member
להפוך את המשתנה

נו טוב צריך מידי פעם ללכלך את הידיים לכתוב איזה סקיפטון. echo $PATH | gawk -F: '{ for ( i = NF ; i>=1 ; i-- ) printf $i":";}' > FILENAME
 

eyalbd

New member
מותר פרל?

למרות שלדעתי לא התכוונו לזה
echo $PATH | perl -ne 'print; chomp; print join(":", reverse split(":",$_)), "\n";'​
 

voguemaster

New member
ידעתי שתשיג אותי! ../images/Emo13.gif

רציתי גם לכתוב את זה ככה
. פשוט שפה מדהימה
 
בבקשה

להזכירך, אפשר לקבל את מספר המילים הנפרדות בתוך PATH ע"י:
$#PATH​
וכמו כן, אם היה לך משתנה I שרץ מהערך הנ"ל עד 0, אז היית יכולה להשתמש בו כדי לגשת לכל מילה בנפרד:
$PATH[$I]​
 

אלדד28

New member
לא עובד...

ניסיתי גם SHELL-ים אחרים -
[eldad] ~> bsh [\u] \w> echo $#PATH 0PATH [\u] \w> [eldad] ~> csh [eldad@Linux ~]$ echo $#PATH /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games:/home/eldad/bin [eldad@Linux ~]$ exit [eldad] ~> tcsh [eldad@Linux ~]$ echo $#PATH /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games:/home/eldad/bin [eldad@Linux ~]$ exit [eldad] ~> ksh [\u] \w> echo $#PATH 0PATH [\u] \w>​
 
למעלה