
04-06-2009, 11:24
|
 |
|
|
חבר מתאריך: 08.11.01
הודעות: 5,735
|
|
|
למה Reg.exe מתנהג שונה בXP וב2003? (אשכול הוצאת קיטור)
אני יושב לי לתומי ומשכתב סקריפט שאוסף נתונים מהשרתים שלי באמצעות Reg query.
כחלק מתהליך הפילטור של הטקסט אני משתמש בכלי cut של GNU, במקום להשתמש בfor /f המסורבל...
הסקריפט עובד אחלה על התחנה שלי, אבל החלטנו להעביר את הסקריפטים לשרת מרכזי.
מרגע זה, הפילטור מפסיק לעבוד..
לאחר חקירה מאומצת (טוב לא כזה.. אבל זה ביטוי משעשע ) מסתבר שהפקודה Reg.exe בXP מוציאה פלט מופרד באמצעות טאבים, ואילו ב2003 ההפרדה היא באמצעות רווחים.. מה שדופק לי את הסקריפט ומצריך עבודה מחודשת של מספור העמודות וכו..
עכשיו השאלה היא: למה?! למה לאלף עזאזל לכתוב תוכנה שונה לXP ול2003..
שיהיה ברור, הקובץ מהXP עובד יופי ב2003.. כך למשל:
קוד:
Microsoft Windows [Version 5.2.3790]
C:\>reg query "\\server01\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CSDVersion 2>&1 | findstr /i /C:"error" /C:"SZ"|tr \t -
CSDVersion REG_SZ Service Pack 2
C:\>\\mypc\c$\WINDOWS\system32\reg.exe query "\\server01\HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v CSDVersion 2>&1 | findstr /i /C:"error" /C:"SZ"|tr \t -
CSDVersion-REG_SZ-Service Pack 2
C:\>
עכשיו, לא שזה כזה מסובך לכתוב משהו שיעשה את העבודה טוב יותר.. אבל זה אומר לשבת ולכתוב שוב.
אוף. P:
שימי הבמה שלך...
_____________________________________
לבלוג שלי - Sandbox

Pinky: Ha ha ha ha, Troz!
Brain: What is troz?
Pinky: Why that's Zort in a mirror. Huh huh, Troz!
|