Tôi thực sự mới với bash, nhưng đó là một trong những môn học ở trường. Một trong các bài tập là:Bash: mẫu grep từ đầu ra lệnh
Cho số dòng của tệp "/ etc/passwd" nơi thông tin về thông tin đăng nhập của bạn.
Giả sử USERNAME
là ID đăng nhập của riêng tôi, tôi đã có thể làm điều đó một cách hoàn hảo theo cách này:
cat /etc/passwd -n | grep USERNAME | cut -f1
Mà chỉ đơn giản là đưa số dòng cần thiết (có thể là một cách tối ưu hơn). Tuy nhiên, tôi tự hỏi, nếu có một cách để làm cho lệnh tổng quát hơn để nó sử dụng đầu ra của whoami
để đại diện cho mẫu grep, mà không có kịch bản hoặc sử dụng biến. Nói cách khác, để giữ cho nó trở thành một dòng lệnh dễ đọc, như vậy:
cat /etc/passwd -n | grep (whoami) | cut -f1
Xin lỗi nếu đây là câu hỏi thực sự.
OK, backticks ... Tất nhiên :) Cảm ơn! – MarioDS
Nếu không có neo, điều này có thể tạo ra các kết quả trùng khớp nếu tên đăng nhập của bạn khớp với nơi khác trên đường truyền. Tôi đã từng có một tên đăng nhập ngắn trên một hệ thống địa phương đã xảy ra để phù hợp (một chuỗi con) của "Nhà điều hành hệ thống" vì vậy một số phần mềm ngu ngốc nghĩ rằng tôi là 'root' khi tôi không. – tripleee