Time Machine tiến bộ từ dòng lệnh


22

Các Time Machine bảng điều khiển cung cấp thông tin về sao lưu theo tiến độ. Ví dụ

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

Có cách nào để lấy thông tin từ dòng lệnh không?

Câu trả lời:


38

Trong khi sao lưu đang chạy, thông tin chi tiết gan có được

tmutil status

cái nào sẽ trả về cái gì đó như thế này:

Backup session status:
{
    BackupPhase = Copying;
    ClientID = "com.apple.backupd";
    DateOfStateChange = "2014-12-18 14:14:21 +0000";
    DestinationID = "B4AF88-5AD5-49BE-B254-650B44E20499";
    DestinationMountPoint = "/Volumes/TimeMachine";
    Percent = "0.852581430477103";
    Progress =     {
        TimeRemaining = 0;
        "_raw_totalBytes" = 38596759;
        bytes = 36563200;
        files = 480;
        totalBytes = 42456434;
        totalFiles = 480;
    };
    Running = 1;
    Stopping = 0;
    "_raw_Percent" = "0.9473127005301144";
}

Nếu bạn chỉ quan tâm đến tỷ lệ phần trăm, hãy thử các cách sau (trông xấu, chỉ hoạt động nếu có phần trăm để hiển thị):

tmutil status | awk '/_raw_Percent/ {print $3}' | grep -o '[0-9].[0-9]\+' | awk '{print $1*100}'

2
Tôi không thể tìm thấy điều này trong trang web. Bạn đã lượm lặt động từ này ở tmutilđâu?
jsejcksn

4
@jsejcksn Thành thật mà nói, tôi không nhớ nơi mà tôi đã tìm ra status, chạy tmutil help statusbây giờ trở về *** status is a private verb. ***; tại sao lại như vậy và đặc biệt nếu đây là trường hợp hai năm trước, tôi không biết: D
Asmus

2
Định dạng của dữ liệu là tmutilgì? Nó không hoàn toàn JSON. Đây có phải là một loại bãi chứa đối tượng C?
LS

4
@LS này được định dạng dưới dạng danh sách thuộc tính kiểu NeXTSTEP
Asmus

2

Để chỉ nhận giá trị phần trăm:

tmutil status | awk -F'"' '/_raw_Percent/ {print $4*100}'
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.