דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. עזרה בפקודות cmd, הגדרת משתנים

עזרה בפקודות cmd, הגדרת משתנים

מתוזמן נעוץ נעול הועבר תכנות
5 פוסטים 3 כותבים 306 צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • shragaS
    shragaS
    shraga
    כתב ב נערך לאחרונה על ידי shraga
    #1

    שלום אשמח לעזרת החברים דכאן, במספר פקודות שונות, אני יכתוב אותם בעברית ואשמח אם מישהו יעזור לי לתרגם אותם לפקודת cmd.

    פקודה שתפעיל קובץ exe בתלות בגירסת מערכת ההפעלה, היינו
    במידה ומערכת ההפעלה היא 64 ביט = יפתח קובץ בשם c:\test64.exe
    במידה והמערכת היא 32 ביט = יפתח קובץ בשם c:\test86.exe

    יש מספר פקודות אפשרויות שמציגות את גירסת מערכת ההפעלה, כגון:
    wmic os get osarchitecture
    או
    echo %PROCESSOR_ARCHITECTURE%

    לפי מה שאני מבין אני צריך הצבה של הפלט מהפקודות הנ"ל כמשתנה, ואז הגדרה שif המשתנה הוא

     OSArchitecture
    64-bit
    

    שיעשה start לקובץ c:\test64.exe ואם המשתנה הוא

    OSArchitecture
    32-bit
    

    שיעשה start לקובץ c:\test86.exe.

    לפי איך שנראה לי הפקודה היא:

    IF %processor_architecture%==AMD64 start c:\test64.exe
    

    אני צודק? אם כן, מה הפלט של processor_architecture במקרה של 32 ביט?

    תודה רבה!!

    chvC תגובה 1 תגובה אחרונה
    0
    • כוכב שמחכ
      כוכב שמחכ
      כוכב שמח
      כתב ב נערך לאחרונה על ידי כוכב שמח
      #2

      @shraga

      reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" | find /i "x86" > NUL && set 1234=test86.exe || set 1234=test64.exe
      start c:\%1234%
      

      במקום ה '1234' תכתוב מה שאתה רוצה (בשלושת הפעמים).

      תגובה 1 תגובה אחרונה
      1
      • shragaS shraga

        שלום אשמח לעזרת החברים דכאן, במספר פקודות שונות, אני יכתוב אותם בעברית ואשמח אם מישהו יעזור לי לתרגם אותם לפקודת cmd.

        פקודה שתפעיל קובץ exe בתלות בגירסת מערכת ההפעלה, היינו
        במידה ומערכת ההפעלה היא 64 ביט = יפתח קובץ בשם c:\test64.exe
        במידה והמערכת היא 32 ביט = יפתח קובץ בשם c:\test86.exe

        יש מספר פקודות אפשרויות שמציגות את גירסת מערכת ההפעלה, כגון:
        wmic os get osarchitecture
        או
        echo %PROCESSOR_ARCHITECTURE%

        לפי מה שאני מבין אני צריך הצבה של הפלט מהפקודות הנ"ל כמשתנה, ואז הגדרה שif המשתנה הוא

         OSArchitecture
        64-bit
        

        שיעשה start לקובץ c:\test64.exe ואם המשתנה הוא

        OSArchitecture
        32-bit
        

        שיעשה start לקובץ c:\test86.exe.

        לפי איך שנראה לי הפקודה היא:

        IF %processor_architecture%==AMD64 start c:\test64.exe
        

        אני צודק? אם כן, מה הפלט של processor_architecture במקרה של 32 ביט?

        תודה רבה!!

        chvC
        chvC
        chv
        כתב ב נערך לאחרונה על ידי
        #3

        @shraga אתה צריך לבדוק את הערך של המערכת הפעלה. זה מה שמשנה (יכול להיות שהמעבד יהיה 64 אבל המערכת הפעלה 32)

        תסתכל כאן הכי ברור שיש: https://stackoverflow.com/a/35979925/13312191
        (תוסיף @echo off בהתחלה. ובמקום ההפניה לSUCCESS תשים את הפקודה להריץ את הקובץ המתאים ו-exit\pause)

        בלוג | מייל

        shragaS תגובה 1 תגובה אחרונה
        2
        • chvC chv

          @shraga אתה צריך לבדוק את הערך של המערכת הפעלה. זה מה שמשנה (יכול להיות שהמעבד יהיה 64 אבל המערכת הפעלה 32)

          תסתכל כאן הכי ברור שיש: https://stackoverflow.com/a/35979925/13312191
          (תוסיף @echo off בהתחלה. ובמקום ההפניה לSUCCESS תשים את הפקודה להריץ את הקובץ המתאים ו-exit\pause)

          shragaS
          shragaS
          shraga
          כתב ב נערך לאחרונה על ידי
          #4

          תודה לכם!

          @chv

          FOR /f "tokens=2 delims==" %%f IN ('wmic os get osarchitecture /value ^| find "="') DO SET "OS_ARCH=%%f"
          IF "%OS_ARCH%"=="32-bit" GOTO :32bit
          IF "%OS_ARCH%"=="64-bit" GOTO :64bit
          
          ECHO OS Architecture %OS_ARCH% is not supported!
          EXIT 1
          
          :32bit
          ECHO "32 bit Operating System"
          GOTO :START "c:\test86.exe"
          
          :64bit
          ECHO "64 bit Operating System"
          GOTO :START "c:\test64.exe"
          
          :SUCCESS
          EXIT 0
          
          
          

          אני כנראה מפספס את:
          @chv אמר בעזרה בפקודות cmd, הגדרת משתנים:

          ו-exit\pause)

          לא הבנתי מה בדיוק לשים והיכן, אין לי שום מושג בתחביר של cmd

          chvC תגובה 1 תגובה אחרונה
          0
          • shragaS shraga

            תודה לכם!

            @chv

            FOR /f "tokens=2 delims==" %%f IN ('wmic os get osarchitecture /value ^| find "="') DO SET "OS_ARCH=%%f"
            IF "%OS_ARCH%"=="32-bit" GOTO :32bit
            IF "%OS_ARCH%"=="64-bit" GOTO :64bit
            
            ECHO OS Architecture %OS_ARCH% is not supported!
            EXIT 1
            
            :32bit
            ECHO "32 bit Operating System"
            GOTO :START "c:\test86.exe"
            
            :64bit
            ECHO "64 bit Operating System"
            GOTO :START "c:\test64.exe"
            
            :SUCCESS
            EXIT 0
            
            
            

            אני כנראה מפספס את:
            @chv אמר בעזרה בפקודות cmd, הגדרת משתנים:

            ו-exit\pause)

            לא הבנתי מה בדיוק לשים והיכן, אין לי שום מושג בתחביר של cmd

            chvC
            chvC
            chv
            כתב ב נערך לאחרונה על ידי
            #5

            @shraga ככה:

            @echo off
            FOR /f "tokens=2 delims==" %%f IN ('wmic os get osarchitecture /value ^| find "="') DO SET "OS_ARCH=%%f"
            IF "%OS_ARCH%"=="32-bit" GOTO :32bit
            IF "%OS_ARCH%"=="64-bit" GOTO :64bit
            
            ECHO OS Architecture %OS_ARCH% is not supported!
            pause
            
            :32bit
            ECHO "32 bit Operating System"
            START "c:\test86.exe"
            pause
            
            :64bit
            ECHO "64 bit Operating System"
            START "c:\test64.exe"
            pause
            

            אם אין לך עניין שיציג הודעה אלא פשוט יפעיל את הקובץ המבוקש וייסגר מיד החלון של CMD, תחליף את המילים pause ב-exit

            בלוג | מייל

            תגובה 1 תגובה אחרונה
            1

            שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

            נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

            בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

            הרשמה התחברות
            תגובה
            • תגובה כנושא
            התחברו כדי לפרסם תגובה
            • מהישן לחדש
            • מהחדש לישן
            • הכי הרבה הצבעות


            בא תתחבר לדף היומי!
            • התחברות

            • אין לך חשבון עדיין? הרשמה

            • התחברו או הירשמו כדי לחפש.
            • פוסט ראשון
              פוסט אחרון
            0
            • דף הבית
            • קטגוריות
            • פוסטים אחרונים
            • משתמשים
            • חיפוש
            • חוקי הפורום