Hibernacja komputera z przekroczeniem limitu czasu z wiersza polecenia w systemie Windows 7


63

Próbuję zahibernować mój komputer z polecenia. Używałem shutdown /s /t 20do wyłączenia się komputera. Zmieniam / s na / h na hibernację, a teraz zwraca tekst użycia, jakby nie rozpoznał tego, co wprowadziłem. W tym jest powiedziane

/h         Hibernate the local computer.

Czy jest coś jeszcze, czego muszę użyć z / h, aby przejść do stanu hibernacji?


Ale w tym przypadku (w przypadku użycia opcji waitfor lub coś takiego) nie można przerwać zaplanowanej hibernacji ....

Odpowiedzi:


76

Niestety nie sądzę, że możesz ustawić czas hibernacji.

Próbować:

ping -n 20 127.0.0.1 > NUL 2>&1 && shutdown /h /f

pingJest hackish sposobem opóźniania działań. -n 20powinien poczekać 20 sekund.

(podwójny &&pozwoli ci zrobić Ctrl+, Caby anulować operację, ale jeśli użyjesz prostego, &naciśnięcie Ctrl+ Cspowoduje tylko przerwanie timera, a następnie kontynuuje zamykanie)


haha, +1 za tę przyjemną zamianę „uśpienia” :) Napisałem własny .exe, aby to zrobić, ale .. hehahahahr.
akira

6
Dlaczego nie możemy ustawić czasu hibernacji? zezwolenie na tę funkcję nie byłoby trudne dla programistów systemu Windows. ale dlaczego nie? Z oo
Amirreza Nasiri

Fajnie, ale && nie działa w PowerShell
Dr Deo

Uwaga: > NUL 2>&1część uniemożliwi jakiekolwiek wyjście z ping(więcej informacji znajduje się w powiązanych pytaniach ).
Top-Master

34

Możesz również rozważyć użycie poleceń „timeout” lub „waitfor” w podobny sposób.

timeout /t 20 /NOBREAK > NUL && shutdown /h

lub

waitfor NUL /t 20 || shutdown /h

Więcej tutaj: Jak zmusić plik wsadowy do oczekiwania / uśpienia na kilka sekund?


1
Obie opcje działają, ale pierwsza jest lepsza . Jeśli chcesz anulować polecenie za pomocą <kbd> Ctrl </kbd> + <kbd> C </kbd>, pierwsza opcja zostanie anulowana, ale druga otrzyma falsew pierwszym warunku i przejdzie shutdownbezpośrednio do polecenia.
IgniteCoders

10

Używam następujących:

sleep 20 && shutdown /h /f

Lub to, jeśli chcę to wyłączyć w określonym czasie:

At 22:30 shutdown /h /f

Próbowałem polecenia At 22:30 shutdown /h /fw wierszu polecenia cmd, dostałem komunikat, jak odmowa dostępu, ale jestem administratorem komputera. czekam na twój respose
Smart003

Wierzę, że w Windows 10 zmienili uprawnienia wymagane do używania „w”. Jest przeznaczony tylko do zadań systemowych i aby go wykonać, musisz mieć konto SYSTEM. Tak, SYSTEM jest bardziej uprzywilejowany niż konta administratora (lokalnie) i tak, istnieje sposób na uzyskanie wiersza polecenia na koncie SYSTEM.
Thanasis Kapelonis


3

Oczywiście możesz ustawić CZAS hibernacji.

Jeśli naprawdę chcesz hibernować swój komputer po określonym czasie, wystarczy wpisać to polecenie poniżej w cmd, tj .:

    timeout /t 36000 /nobreak & shutdown /h

Teraz komputer zacznie odliczać od 36000 do 0, zanim przejdzie w stan hibernacji. Pamiętaj jednak, że możesz zmienić 36000 na dowolną liczbę sekund, która Ci odpowiada.



2

Czy wypróbowałeś Harmonogram zadań systemu Windows? Jeśli masz skrypt, możesz go ustawić na uruchomienie w określonym czasie - powinno to odpowiedzieć na pytanie o opóźnienie czasowe.


2

zawsze używam tego:

zamknięcie -h


Nie ma znaczenia, z jakiegoś powodu nie można hibernować.
Synetech

@ Synetech Programiści systemu Windows nie mieliby trudności z włączeniem tej funkcji. ale dlaczego nie? Z oo
Amirreza Nasiri

1

Długo szukałem też hibernacji czasowej. Wreszcie stworzyłem następujące rozwiązanie:

Utwórz batplik jak poniżej:

timeout /t %1 /nobreak && shutdown /h

Załóżmy, że jest zapisany C:\hibernate.bat

Następnie otwórz Runpolecenie ( Win+R) i uruchom batplik z limitem sekund, jak poniżej:

C:\hibernate.bat [timeout]


-2

Zamiast /używać -.

Użyj poniższego polecenia w CMD jako admin priv i test

shutdown -h
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.