Tìm kiếm văn bản cụ thể từ tệp và xuất dòng (Shell script)


12

Giả sử tôi có một biến $ str1

str1="20140121-21:48:26|Joanne Frances|"

Những gì tôi muốn làm là tìm kiếm phần đó trong tập tin. Tệp chứa, ví dụ:

20140121-21:48:26|Joanne Frances|Perez|9173046751.000000|Mar 31|
20140121-21:50:28|Nikko|Real|9065887272.000000|Mar 21|
20140121-22:22:53|Czarina|Revilla|9999999999.000000|Jan 21|

Đầu ra phải là:

20140121-21: 48: 26 | Joanne Frances | Perez | 9173046751.000000 | ngày 31 tháng 3 |

Cập nhật: Cuối cùng cũng biết vấn đề là gì đã cố gắng echo $str1và nó xuất ra 20140121|Adrian Perez|có nghĩa là nó thực sự KHÔNG có trong tệp. Haaa! Tôi đúng là một người luộm thuộm! -_-


bạn chỉ có thể sử dụng grep. ví dụgrep $str filename.txt
mcantsin

@mcantsin Tôi đã thử, nó không hoạt động
joanne_

và lỗi gì? - Không có đầu ra?
mcantsin

@mcantsin yup không có đầu ra!
joanne_

Tôi đã thử nghiệm ví dụ của bạn và nó hoạt động hoàn hảo cho tôi. - Chắc chắn không có lỗi đánh máy?
mcantsin

Câu trả lời:


12

Dùng cái này:

grep "$str" filename.txt

để ngăn chặn việc giải thích sai các ký tự đặc biệt.

Để biết thêm, hãy tham khảo điều này:

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.