Lệnh Get-History PowerShell là một công cụ tích hợp mạnh mẽ trong môi trường Windows PowerShell, cho phép người dùng truy xuất, xem và quản lý toàn bộ lịch sử các lệnh đã thực thi trong phiên làm việc hiện tại. Thay vì phải gõ lại những câu lệnh phức tạp, Khái niệm và bản chất

Lệnh Get-History (bí danh: ghy) thuộc nhóm lệnh quản lý lịch sử trong PowerShell. Khi bạn mở một phiên PowerShell mới, hệ thống sẽ tự động ghi lại mọi lệnh bạn gõ vào một bộ đệm lịch sử. Lệnh này cho phép bạn đọc nội dung của bộ đệm đó, hiển thị danh sách các lệnh kèm theo mã số nhận dạng (ID), thời gian thực thi và dòng lệnh.
Bản chất của Get-History là một lệnh ghép (cmdlet) đọc từ đối tượng PSReadLine – module quản lý lịch sử dòng lệnh mặc định từ PowerShell 5.0 trở lên. Nếu phiên bản cũ hơn hoặc
Phím mũi tên lên cho phép duyệt nhanh các lệnh gần đây, nhưng không hiển thị ID và thời gian. Get-History cung cấp dữ liệu có cấu trúc, có thể sử dụng trong pipe (đường ống) với các lệnh khác để xử lý tự động.
Tôi có thể tăng số lượng lệnh trong lịch sử không?
Có. Trong phiên hiện tại, thiết lập biến: $MaximumHistoryCount = 10000. Để thiết lập vĩnh viễn, thêm dòng này vào profile PowerShell ($PROFILE).
Tại sao Get-History không hiển thị lịch sử mặc dù tôi đã gõ nhiều lệnh?
Nguyên nhân thường gặp: bạn đang sử dụng PowerShell ISE hoặc một host không hỗ trợ PSReadLine. Thử gõ Get-PSReadLineOption để kiểm tra. Nếu không có kết quả, có thể module PSReadLine chưa được tải.
Kết luận

Lệnh Get-History PowerShell là một công cụ không thể thiếu đối với bất kỳ ai làm việc thường xuyên với dòng lệnh PowerShell. Nó giúp tiết kiệm thời gian, giảm thiểu lỗi gõ lặp và hỗ trợ quá trình gỡ lỗi hiệu quả. Bằng cách kết hợp với các lệnh liên quan như Invoke-History, Clear-History, và các kỹ thuật lọc nâng cao, bạn có thể tối ưu hóa quy trình làm việc hàng ngày.
Hãy tập thói quen kiểm tra lịch sử lệnh trước khi kết thúc phiên làm việc, đặc biệt khi xử lý các tác vụ quản trị nhạy cảm. Với những kiến thức được chia sẻ trong bài, bạn hoàn toàn có thể khai thác triệt để sức mạnh của lệnh Get-History và nâng cao năng suất công việc đáng kể.







