Làm thế nào để có được thời gian hoạt động của hệ thống trong Windows? [đóng cửa]


308

Tôi đang sử dụng windows 7 và xp. Tôi muốn biết thời gian hoạt động của hệ thống.

Lệnh / thủ tục để có được thời gian hoạt động là gì?


5
Err, bạn đang tìm kiếm một lệnh trong dấu nhắc lệnh? Nếu bạn là, sau đó thử net statistics servertrong dấu nhắc lệnh.
s0d4pop

13
Câu hỏi sẽ được đăng trong superuser
000

1
Cách lấy thông tin về trạng thái hệ thống từ dòng lệnh có liên quan rất rõ ràng đến lập trình.
John

Câu hỏi này được trả lời trên ServerFault: serverfault.com/questions/159612/

xem thêm superuser.com/a/909172/33303 nếu bạn cũng quan tâm đến chế độ chờ / ngủ đông
Janus Troelsen

Câu trả lời:


685

Sau đây là tám cách để tìm Thời gian hoạt động trong HĐH Windows.

1: Bằng cách sử dụng Trình quản lý tác vụ

Trong Windows Vista và Windows Server 2008, Trình quản lý tác vụ đã được tăng cường để hiển thị thêm thông tin về hệ thống. Một trong những thông tin này là thời gian hoạt động của máy chủ.

  1. Nhấp chuột phải vào Thanh tác vụ và nhấp vào Trình quản lý tác vụ. Bạn cũng có thể nhấp CTRL+ SHIFT+ ESCđể đến Trình quản lý tác vụ.
  2. Trong Trình quản lý tác vụ, chọn tab Hiệu suất.
  3. Thời gian hoạt động của hệ thống hiện tại được hiển thị dưới Hệ thống hoặc Hiệu suất ⇒ CPU cho Win 8/10.

    Trường "Thời gian lên" trong Trình quản lý tác vụ

2: Bằng cách sử dụng Tiện ích thông tin hệ thống

Các systeminfokiểm tra tiện ích dòng lệnh và hiển thị thống kê hệ thống khác nhau như ngày cài đặt, cài đặt hotfix và nhiều hơn nữa. Mở một Dấu nhắc lệnh và gõ lệnh sau:

systeminfo

Bạn cũng có thể thu hẹp kết quả xuống chỉ còn dòng bạn cần:

systeminfo | find "System Boot Time:"

nhập mô tả hình ảnh ở đây

3: Bằng cách sử dụng Tiện ích thời gian hoạt động

Microsoft đã xuất bản một công cụ có tên Uptime.exe. Nó là một công cụ dòng lệnh đơn giản để phân tích độ tin cậy và thông tin sẵn có của máy tính. Nó có thể làm việc tại địa phương hoặc từ xa. Ở dạng đơn giản, công cụ sẽ hiển thị thời gian hoạt động của hệ thống hiện tại. Tùy chọn nâng cao cho phép bạn truy cập thông tin chi tiết hơn như tắt máy, khởi động lại, sự cố hệ điều hành và cài đặt Gói dịch vụ.

Đọc KB sau để biết thêm thông tin và cho các liên kết tải xuống:

Để sử dụng nó, hãy làm theo các bước sau:

  1. Tải xuống uptime.exe từ liên kết trên và lưu nó vào một thư mục, tốt nhất là trong một thư mục trong đường dẫn của hệ thống (chẳng hạn như HỆ THỐNG32).
  2. Mở một cửa sổ Command Prompt nâng cao. Để mở Dấu nhắc lệnh nâng cao, bấm Bắt đầu, bấm Tất cả chương trình, bấm Phụ kiện, bấm chuột phải vào Dấu nhắc lệnh, sau đó bấm Chạy với tư cách quản trị viên. Bạn cũng có thể nhập CMD vào hộp tìm kiếm của menu Bắt đầu và khi bạn thấy biểu tượng Dấu nhắc Lệnh bấm vào nó để chọn nó, giữ CTRL+ SHIFTvà nhấn ENTER.
  3. Điều hướng đến nơi bạn đã đặt tiện ích uptime.exe.
  4. Chạy uptime.exetiện ích. Bạn có thể thêm một /? vào lệnh để có thêm tùy chọn. nhập mô tả hình ảnh ở đây

Nó không cung cấp nhiều tham số dòng lệnh:

C:\uptimefromcodeplex\> uptime /?
usage: Uptime [-V]
    -V   display version

C:\uptimefromcodeplex\> uptime -V
version 1.1.0

3.1: Bằng cách sử dụng Tiện ích thời gian hoạt động cũ

Có một phiên bản cũ hơn của tiện ích "uptime.exe". Điều này có lợi thế là KHÔNG cần .NET. (Nó cũng có nhiều tính năng hơn ngoài thời gian hoạt động đơn giản.)

Liên kết tải xuống: Công cụ thời gian hoạt động máy chủ Windows NT 4.0 (uptime.exe) (x86 cuối cùng)

C:\uptimev100download>uptime.exe /?

UPTIME, Version 1.00
(C) Copyright 1999, Microsoft Corporation

Uptime [server] [/s ] [/a] [/d:mm/dd/yyyy | /p:n] [/heartbeat] [/? | /help]
        server          Name or IP address of remote server to process.
        /s              Display key system events and statistics.
        /a              Display application failure events (assumes /s).
        /d:             Only calculate for events after mm/dd/yyyy.
        /p:             Only calculate for events in the previous n days.
        /heartbeat      Turn on/off the system's heartbeat
        /?              Basic usage.
        /help           Additional usage information.

4: Bằng cách sử dụng Tiện ích THỐNG KÊ NET

Một phương pháp dễ dàng khác, nếu bạn có thể nhớ nó, là sử dụng thông tin gần đúng được tìm thấy trong các số liệu thống kê được hiển thị bởi lệnh NET STATISTICS. Mở một Dấu nhắc lệnh và gõ lệnh sau:

net statistics workstation

Các số liệu thống kê sẽ cho bạn biết nó đã chạy được bao lâu, mặc dù trong một số trường hợp, thông tin này không chính xác như các phương pháp khác.

nhập mô tả hình ảnh ở đây

5: Bằng cách sử dụng Trình xem sự kiện

Có lẽ chính xác nhất trong tất cả chúng, nhưng nó đòi hỏi một số nhấp chuột. Nó không hiển thị chính xác số ngày hoặc giờ kể từ lần khởi động lại cuối cùng, nhưng nó sẽ hiển thị thông tin quan trọng liên quan đến lý do tại sao máy tính được khởi động lại và khi nào nó làm như vậy. Chúng ta cần xem Event ID 6005, đây là một sự kiện cho chúng ta biết rằng máy tính vừa khởi động xong, nhưng bạn nên biết rằng có gần như hàng trăm nếu không phải là hàng ngàn loại sự kiện khác mà bạn có thể học hỏi từ .

Lưu ý: BTW, ID sự kiện 6006 là thông báo cho chúng tôi biết khi nào máy chủ ngừng hoạt động, vì vậy nếu có nhiều sự khác biệt về thời gian giữa 6006 và 6005 sự kiện, máy chủ đã ngừng hoạt động trong một thời gian dài.

Lưu ý: Bạn cũng có thể mở Trình xem sự kiện bằng cách nhập eventvwr.msc trong lệnh Run và bạn cũng có thể sử dụng phím tắt được tìm thấy trong thư mục Công cụ quản trị.

  1. Nhấp vào Trình xem sự kiện (Cục bộ) trong ngăn điều hướng bên trái.
  2. Trong ngăn giữa, bấm vào loại sự kiện Thông tin và cuộn xuống cho đến khi bạn thấy ID sự kiện 6005. Bấm đúp vào ID sự kiện 6005 hoặc bấm chuột phải vào nó và chọn Xem tất cả các trường hợp của sự kiện này.
  3. Một danh sách tất cả các phiên bản của 6005 ID sự kiện sẽ được hiển thị. Bạn có thể kiểm tra danh sách này, xem ngày và giờ của mỗi sự kiện khởi động lại, v.v.
  4. Mở công cụ Trình quản lý máy chủ bằng cách bấm chuột phải vào biểu tượng Máy tính trên menu bắt đầu (hoặc trên Bàn làm việc nếu bạn đã bật) và chọn Quản lý. Điều hướng đến Trình xem sự kiện.

nhập mô tả hình ảnh ở đây

5.1: Sự kiện thông qua PowerShell

Get-WinEvent -ProviderName eventlog | Where-Object {$_.Id -eq 6005 -or $_.Id -eq 6006}

6: Lập trình, bằng cách sử dụng GetTickCount64

GetTickCount64 lấy số mili giây đã trôi qua kể từ khi hệ thống được khởi động.

7: Bằng cách sử dụng WMI

wmic os get lastbootuptime

8: Uptime.exe mới cho Windows XP trở lên

Giống như công cụ của Microsoft, nhưng tương thích với tất cả các hệ điều hành lên đến và bao gồm cả Windows 10 và Windows Server 2016, tiện ích thời gian hoạt động này không yêu cầu nhắc lệnh nâng cao và cung cấp tùy chọn hiển thị thời gian hoạt động trong cả DD: HH: MM: SS và ở định dạng có thể đọc được của con người (khi được thực hiện với -htham số dòng lệnh).

Ngoài ra, phiên bản này uptime.exesẽ chạy và hiển thị thời gian hoạt động của hệ thống ngay cả khi được khởi chạy bình thường từ trong phiên explorer.exe (tức là không thông qua dòng lệnh) và tạm dừng để đọc thời gian hoạt động:

nhập mô tả hình ảnh ở đây

và khi được thực thi như uptime -h:

nhập mô tả hình ảnh ở đây


2
6. WMI: os vũ trụ nhận được Lastbootuptime
khấu trừ '

3
Lưu ý cho Win XP / 2003 : 1. không sử dụng được (không hiển thị trong Trình quản lý tác vụ) 2. có thể không bao gồm thời gian khởi động (không phải trên PC của tôi), nhưng thời gian hoạt động rõ ràng - trái với đầu ra của hệ thống Windows sau này. Lưu ý rằng đầu ra systeminfo được bản địa hóa, do đó, trên Windows không phải tiếng Anh, bạn cần thay thế "Thời gian khởi động hệ thống" hoặc chỉ chạy systeminfovà kiểm tra toàn bộ đầu ra
FelixD

48
Bây giờ đó là những gì tôi gọi là một câu trả lời THOROUGH! :-)
Andrew Steitz

2
Xin lưu ý rằng thời gian hoạt động được báo cáo từ "1: Bằng cách sử dụng Trình quản lý tác vụ" có thể khác với thời gian khởi động, vì nó không bao gồm thời gian ở trạng thái ngủ đông. Ví dụ: PC của tôi đã được khởi động hai ngày trước và chỉ báo cáo 8:20 thời gian hoạt động.
dùng1708042

3
Tùy chọn 1 dường như không còn nữa trong Trình quản lý tác vụ Windows 8 .
BlaM

15

Tôi sử dụng đoạn mã PowerShell nhỏ này:

function Get-SystemUptime {
    $operatingSystem = Get-WmiObject Win32_OperatingSystem
    "$((Get-Date) - ([Management.ManagementDateTimeConverter]::ToDateTime($operatingSystem.LastBootUpTime)))"
}

mà sau đó mang lại một cái gì đó như sau:

PS> Get-SystemUptime
6.20:40:40.2625526

Làm thế nào để gọi quyền hạn này từ bên trong python trên windows?
Ciasto piekarz


7

Hai cách để làm điều đó ..

Lựa chọn 1:

1.  Go to "Start" -> "Run".

2.  Write "CMD" and press on "Enter" key.

3.  Write the command "net statistics server" and press on "Enter" key.

4.  The line that start with "Statistics since …" provides the time that the server was up from.


  The command "net stats srv" can be use instead.

Lựa chọn 2:

Công cụ Uptime.exe cho phép bạn ước tính tính khả dụng của máy chủ với Windows NT 4.0 SP4 trở lên

http://support.microsoft.com/kb/232243

Hy vọng nó đã giúp bạn !!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.