Tìm giá trị cho một khóa đã cho bằng cách sử dụng grep trong chuỗi


1

Làm cách nào tôi có thể grep giá trị SSID từ chuỗi bên dưới bằng grep?

SSID: Home, BSSID: aa:bb:cc:dd:ee:ff

Tôi đã thử

grep -oh "SSID:.*," 

và các kết hợp khác nhưng vô ích.

Các lượng tử miễn cưỡng ?sử dụng -ptrong grepcũng không làm việc cho tôi.

Câu trả lời:


1

Sử dụng grepvới PCRE ( -P):

% grep -Po '(^|\s)SSID:\s\K[^,]+' file.txt

Thí dụ:

% grep -Po '(^|\s)SSID:\s\K[^,]+' <<<'SSID: Home, BSSID: aa:bb:cc:dd:ee:ff'
Home

1
-P không hoạt động trên thiết bị đầu cuối OSX. vì vậy không thể kiểm tra nó Bạn có thay thế cho OSX
Javanator
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.