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

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

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

פקודה בcmd

מתוזמן נעוץ נעול הועבר תכנות
14 פוסטים 4 כותבים 335 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • S מנותק
    S מנותק
    smk123
    כתב ב נערך לאחרונה על ידי
    #3

    הצלחתי רק לנעול את המחשב
    לא הצלחתי לכתוב תנאי כמו שצריך

    תגובה 1 תגובה אחרונה
    0
    • גמליאלג מנותק
      גמליאלג מנותק
      גמליאל
      כתב ב נערך לאחרונה על ידי dovid
      #4

      https://www.windowscommandline.com/execute-batch-file-commands-during-specified-hours/

      קרדיט ל @shraga שטוען בכלל שהקרדיט מגיע ל @google
      אם אי פעם הם יפתחו פה חשבון...

      תגובה 1 תגובה אחרונה
      4
      • S מנותק
        S מנותק
        smk123
        כתב ב נערך לאחרונה על ידי smk123
        #5

        בזכות התגובה של @גמליאל
        הצלחתי ליצור את הקוד CMD הזה

        @ECHO OFF
        IF %time% GEQ 00:00:00.00 IF %time% LEQ 08:30:00.00 (GOTO OPEN) 
        IF %time% GEQ 09:15:00.00 IF %time% LEQ 09:30:00.00 (GOTO OPEN)
        IF %time% GEQ 14:52:00.00 IF %time% LEQ 15:10:00.00 (GOTO OPEN)
        IF %time% GEQ 16:00:00.00 IF %time% LEQ 16:30:00.00 (GOTO OPEN)
        IF %time% GEQ 17:30:00.00 IF %time% LEQ 23:59:00.00 (GOTO OPEN)
        
        
        
        :CLOSE
        net user test1 /active:no
        rundll32.exe user32.dll,LockWorkStation
        GOTO  END
        
        :OPEN
        net user test1 /active:yes
        GOTO END
        
        
        
        
        END:
        

        זה עובד מצוין בהפלה רגילה (דאבל קליק)
        הבעיה מתחילה כשאני מתזמן לו משימה הוא מבצע רק את החלק של האקטוב של החשבון או אי האקטוב לפי השעה אבל לא מבצע את נעילת המחשב.
        אשמח לעזרה

        yossizY תגובה 1 תגובה אחרונה
        0
        • S smk123

          בזכות התגובה של @גמליאל
          הצלחתי ליצור את הקוד CMD הזה

          @ECHO OFF
          IF %time% GEQ 00:00:00.00 IF %time% LEQ 08:30:00.00 (GOTO OPEN) 
          IF %time% GEQ 09:15:00.00 IF %time% LEQ 09:30:00.00 (GOTO OPEN)
          IF %time% GEQ 14:52:00.00 IF %time% LEQ 15:10:00.00 (GOTO OPEN)
          IF %time% GEQ 16:00:00.00 IF %time% LEQ 16:30:00.00 (GOTO OPEN)
          IF %time% GEQ 17:30:00.00 IF %time% LEQ 23:59:00.00 (GOTO OPEN)
          
          
          
          :CLOSE
          net user test1 /active:no
          rundll32.exe user32.dll,LockWorkStation
          GOTO  END
          
          :OPEN
          net user test1 /active:yes
          GOTO END
          
          
          
          
          END:
          

          זה עובד מצוין בהפלה רגילה (דאבל קליק)
          הבעיה מתחילה כשאני מתזמן לו משימה הוא מבצע רק את החלק של האקטוב של החשבון או אי האקטוב לפי השעה אבל לא מבצע את נעילת המחשב.
          אשמח לעזרה

          yossizY מחובר
          yossizY מחובר
          yossiz
          כתב ב נערך לאחרונה על ידי
          #6

          @smk123 כיוון לבדיקה:
          אולי צריך שהפקודה ירוץ תחת החשבון של המשתמש שמחובר?

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          S 2 תגובות תגובה אחרונה
          4
          • yossizY yossiz

            @smk123 כיוון לבדיקה:
            אולי צריך שהפקודה ירוץ תחת החשבון של המשתמש שמחובר?

            S מנותק
            S מנותק
            smk123
            כתב ב נערך לאחרונה על ידי
            #7

            @yossiz כרגע זה רץ תחתיו

            תגובה 1 תגובה אחרונה
            1
            • yossizY yossiz

              @smk123 כיוון לבדיקה:
              אולי צריך שהפקודה ירוץ תחת החשבון של המשתמש שמחובר?

              S מנותק
              S מנותק
              smk123
              כתב ב נערך לאחרונה על ידי
              #8

              @yossiz
              אולי אני ינסה משהו אחר
              איך אני כותב לי בקובץ לרוץ בתור משתמש מסוים?

              yossizY תגובה 1 תגובה אחרונה
              0
              • S smk123

                @yossiz
                אולי אני ינסה משהו אחר
                איך אני כותב לי בקובץ לרוץ בתור משתמש מסוים?

                yossizY מחובר
                yossizY מחובר
                yossiz
                כתב ב נערך לאחרונה על ידי
                #9

                @smk123 עשיתי ניסויים עכשיו. נראה שזה עובד רק אם אתה מגדיר כך:
                8f0f8024-e423-4d91-bec4-532976c0e57e-image.png

                @smk123 אמר בפקודה בcmd:

                איך אני כותב לי בקובץ לרוץ בתור משתמש מסוים?

                runas /user:<שם המשתמש> notepad.exe
                

                📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                תגובה 1 תגובה אחרונה
                1
                • S מנותק
                  S מנותק
                  smk123
                  כתב ב נערך לאחרונה על ידי smk123
                  #10
                  @ECHO OFF
                  IF %time% GEQ 00:00:00.00 IF %time% LEQ 08:30:00.00 (GOTO OPEN) 
                  IF %time% GEQ 09:15:00.00 IF %time% LEQ 09:30:00.00 (GOTO OPEN)
                  IF %time% GEQ 14:52:00.00 IF %time% LEQ 15:10:00.00 (GOTO OPEN)
                  IF %time% GEQ 16:00:00.00 IF %time% LEQ 16:30:00.00 (GOTO OPEN)
                  IF %time% GEQ 17:30:00.00 IF %time% LEQ 23:59:00.00 (GOTO OPEN)
                   
                   
                   
                  :CLOSE
                  net user test1 /active:no
                  rundll32.exe user32.dll,LockWorkStation
                  GOTO  END
                   
                  :OPEN
                  net user test1 /active:yes
                  GOTO END
                   
                   
                   
                   
                  END:
                  

                  משהו בתנאי לא כתוב טוב כנראה
                  וזה עובד רק בתנאים שאחרי 1030
                  אשמח לעזרה איפה טעיתי או קוד תקין
                  הבנתי שיש איזשהו בעיה בשעות שמתחילות באפס

                  תגובה 1 תגובה אחרונה
                  0
                  • S מנותק
                    S מנותק
                    smk123
                    כתב ב נערך לאחרונה על ידי
                    #11

                    @yossiz אולי אתה יכול לעזור זה ממש דחוף

                    yossizY תגובה 1 תגובה אחרונה
                    0
                    • S smk123

                      @yossiz אולי אתה יכול לעזור זה ממש דחוף

                      yossizY מחובר
                      yossizY מחובר
                      yossiz
                      כתב ב נערך לאחרונה על ידי yossiz
                      #12

                      @smk123
                      במקום ‎%TIME%‎ תכתוב ‎%TIME: =0%‎

                      ביאור הדבר:
                      כאשר השעה פחות מ-10:00 אז התו הראשון של המשתנה ‎%TIME%‎ הוא רווח, ש-CMD מתעלם ממנה ומתחיל את ההשוואה מהתו הבא.
                      התחביר ‎%TIME: =0%‎ אומר ל-CMD להחליף את הרווח בתו 0

                      (מקור)

                      עוד פתרון שלכאורה יעבוד הוא להקיף את המחרוזות בגרשיים:

                      IF "%time%" GEQ "00:00:00.00" IF "%time%" LEQ "08:30:00.00" (GOTO OPEN) 
                      

                      זה בנוי על העובדה שהערך של הרווח (32) הוא פחות מערך מספר (48-57).

                      עוד פרונות:
                      https://stackoverflow.com/questions/54632207/time-comparison-in-windows-batch-script
                      https://stackoverflow.com/questions/21809027/batch-file-run-cmd1-if-time-10pm-4am-else-run-cmd2

                      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

                      S תגובה 1 תגובה אחרונה
                      4
                      • yossizY yossiz

                        @smk123
                        במקום ‎%TIME%‎ תכתוב ‎%TIME: =0%‎

                        ביאור הדבר:
                        כאשר השעה פחות מ-10:00 אז התו הראשון של המשתנה ‎%TIME%‎ הוא רווח, ש-CMD מתעלם ממנה ומתחיל את ההשוואה מהתו הבא.
                        התחביר ‎%TIME: =0%‎ אומר ל-CMD להחליף את הרווח בתו 0

                        (מקור)

                        עוד פתרון שלכאורה יעבוד הוא להקיף את המחרוזות בגרשיים:

                        IF "%time%" GEQ "00:00:00.00" IF "%time%" LEQ "08:30:00.00" (GOTO OPEN) 
                        

                        זה בנוי על העובדה שהערך של הרווח (32) הוא פחות מערך מספר (48-57).

                        עוד פרונות:
                        https://stackoverflow.com/questions/54632207/time-comparison-in-windows-batch-script
                        https://stackoverflow.com/questions/21809027/batch-file-run-cmd1-if-time-10pm-4am-else-run-cmd2

                        S מנותק
                        S מנותק
                        smk123
                        כתב ב נערך לאחרונה על ידי smk123
                        #13

                        @yossiz אמר בפקודה בcmd:

                        כאשר השעה פחות מ-10:00 אז התו הראשון של המשתנה ‎%TIME%‎ הוא רווח, ש-CMD מתעלם ממנה ומתחיל את ההשוואה מהתו הבא.
                        התחביר ‎%TIME: =0%‎ אומר ל-CMD להחליף את הרווח בתו 0

                        @yossiz ב"ה זה עובד תודה רבה.
                        עריכה: זה לא עובד.
                        מנסה את האחרים.
                        זה משגע לי את כל הקובץ ברמה שהוא לא עושה כלום גם בשעות שקודם הוא עשה.

                        S תגובה 1 תגובה אחרונה
                        1
                        • S smk123

                          @yossiz אמר בפקודה בcmd:

                          כאשר השעה פחות מ-10:00 אז התו הראשון של המשתנה ‎%TIME%‎ הוא רווח, ש-CMD מתעלם ממנה ומתחיל את ההשוואה מהתו הבא.
                          התחביר ‎%TIME: =0%‎ אומר ל-CMD להחליף את הרווח בתו 0

                          @yossiz ב"ה זה עובד תודה רבה.
                          עריכה: זה לא עובד.
                          מנסה את האחרים.
                          זה משגע לי את כל הקובץ ברמה שהוא לא עושה כלום גם בשעות שקודם הוא עשה.

                          S מנותק
                          S מנותק
                          smk123
                          כתב ב נערך לאחרונה על ידי
                          #14

                          @yossiz
                          עשיתיקוד כזה

                          @ECHO OFF
                          SET "BOMBA=%TIME: =0%"
                          IF "%BOMBA%" GEQ "00:00:00.00" IF "%BOMBA%" LEQ "08:29:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "09:14:59.00" IF "%BOMBA%" LEQ "09:29:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "10:29:59.00" IF "%BOMBA%" LEQ "10:59:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "11:54:59.00" IF "%BOMBA%" LEQ "12:09:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "12:59:59.00" IF "%BOMBA%" LEQ "13:59:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "14:51:59.00" IF "%BOMBA%" LEQ "15:09:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "15:59:00.00" IF "%BOMBA%" LEQ "16:29:59.00" (GOTO OPEN)
                          IF "%BOMBA%" GEQ "17:29:59.00" IF "%BOMBA%" LEQ "23:59:00.00" (GOTO OPEN)
                          
                          
                          
                          :CLOSE
                          net user 123 /active:no
                          GOTO END
                          
                          :OPEN
                          net user 123 /active:yes
                          GOTO END
                          
                          
                          :END
                          

                          יש לי גם כזה קוד שנועל את המחשב לפי השעות
                          התנאי כאן בסדר והוא פותח או נועל גם בשעות שמתחילות ב0
                          הבעיה כאן שמאז שהרצתי את זה זה עובד לי במתזמן משימות רק בטריגרים של כניסה או פתיחה מנעילה ביוזר ולא בטריגרים של שעות מוגדרות.
                          ואפי' משימת נעילה אחרת שעשיתי ללא כל התנאי הזה ג"כ לא עובדת.
                          אשמח לדעת איפה טעיתי
                          יישר כח

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


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

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

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