Câu lệnh Wall trong Linux

Chia sẻ

Wall là công cụ dùng để hiển thị một tin nhắn trên Terminal cho tất cả users đang đăng nhập. Bạn có thể nhập tin nhắn này vào Terminal hoặc lấy nội dung từ một files, wall viết tắt của write all, để gửi một tin nhắn tới một user cụ thể bạn hãy dùng câu lệnh write
Thông thường, một người quản trị viên hệ thống gửi tin nhắn thông báo về những việc như bảo trì hệ thống và yêu cầu người dùng đăng xuất và đóng tất cả chương trình. Tin nhắn sẽ được hiện cho tất cả người dùng đang đăng nhập và mở Terminal. Người dùng sử dụng giao diện đồ hoạ nhưng không mở Terminal sẽ không nhận được thông báo. Mỗi user có thể tuy chỉnh khả năng viết lên Terminal của họ bằng công cụ mesg. Nhưng khi người quản trị thực hiện câu lệnh wall, tất cả users đều nhận được tin nhắn, không quan tâm gì tới cài đặt mesg của họ

Thực hiện gửi một tin nhắn

Cú pháp của lệnh wall được thể hiện như sau

wall [OPTIONS] [<FILE>|<MESSAGE>]

Nếu không file nào được chỉ định thì wall sẽ lấy tin nhắn từ những gì bạn nhập vào Terminal. Ví dụ như

wall "The system will be restarted in 10 minutes."

Các user đang đăng nhập vào hệ thống sẽ nhận được thông báo như sau

Broadcast message from root@linuxize.host (pts/0) (Sun Oct 4 19:22:07 2020):
The system will be restarted in 10 minutes.

Nếu bạn muốn bỏ đoạn banner có thể sử dụng tham số -n

wall -n "The system will be restarted in 10 minutes."

Khi đó người dùng chỉ nhận được thông báo

The system will be restarted in 10 minutes.

Nếu bạn muốn viết nhiều dòng thông báo hãy chạy câu lệnh wall mà không cần tham số, bạn gõ tin nhắn vào khi nào gõ xong thì bấm Ctrl + D để kết thúc và gửi tin nhắn đi. Hoặc dùng câu lệnh echo kết hợp với wall như ví dụ dưới
echo “The system will be restarted in 10 minutes. \nPlease save your work.” | wall

Thực hiện gửi một tin nhắn lấy nội dung từ một files

Ví dụ tôi tạo ra file message1_file.txt có nội dung như sau

The system will be restarted in 10 minutes.

Cú pháp câu lệnh như sau

wall message1_file.txt

Kết quả

Broadcast message from root@linuxize.host (pts/0) (Sun Oct 4 19:25:06 2020):
The system will be restarted in 10 minutes.

Chỉ gửi tin nhắn tới một group

Bạn sử dụng tham số -g + <tên group>. Ví dụ lệnh dưới sẽ chỉ truyền tin nhắn tới nhóm có tên là devs

wall -g devs "The system will be restarted in 10 minutes."

Dịch từ: linuxize
 

Chia sẻ