Tôi biết câu hỏi này đã được hỏi từ lâu, nhưng vì vẫn chưa có câu trả lời chung, vì vậy tôi nghĩ tôi sẽ chia sẻ cách tiếp cận của mình. Có một cách dễ dàng để lọc điều này với một vài lệnh hàng loạt.
for /f "skip=1delims=" %%a in (
'wmic sysaccount where "SID='S-1-1-0'" get name'
) do set "sid=%%a"&goto next
:next
Vòng lặp là cần thiết vì phần "lấy tên" cung cấp cho toàn bộ bảng với tiêu đề để chúng tôi lọc cho dòng thứ hai. Sau đó, mã này lưu trữ giá trị của SID theo ngôn ngữ của bạn trong biến "sid", vì vậy bạn chỉ phải tham chiếu đến nó khi bạn muốn sử dụng nó.
Trong trường hợp này, toàn bộ mã sẽ trông như thế này:
for /f "skip=1delims=" %%a in (
'wmic sysaccount where "SID='S-1-1-0'" get name'
) do set "sid=%%a"&goto next
:next
netsh http add urlacl url=https://Melnibone:443/ user=%sid%
LƯU Ý: Cách bạn lọc cho dòng thứ hai là tùy thuộc vào bạn, "điều kỳ diệu" thực sự xảy ra trong dòng này:
wmic sysaccount where "SID='S-1-1-0'" get name