07/05/2018, 15:01

Các tiện ích cơ bản: in, email trong Unix

Đến chương này, bạn đã có một vài nhận thức cơ bản về hệ thống Unix và một số lệnh cơ bản của nó. Chương này sẽ sơ qua về một số tiện ích cơ bản nhưng quan trọng trong các tiện ích của Unix mà bạn sẽ sử dụng chúng trong hoạt động thường nhật. In các file trong Unix/Linux Trước khi ...

Đến chương này, bạn đã có một vài nhận thức cơ bản về hệ thống Unix và một số lệnh cơ bản của nó. Chương này sẽ sơ qua về một số tiện ích cơ bản nhưng quan trọng trong các tiện ích của Unix mà bạn sẽ sử dụng chúng trong hoạt động thường nhật.

In các file trong Unix/Linux

Trước khi bạn in một file trên hệ thống Unix, bạn có thể muốn định dạng lại nó để tùy chỉnh các lề, đánh dấu một vài từ,…. Hầu hết các file có thể được in mà không cần định dạng lại, nhưng bản in thô như vậy thường trông không được đẹp cho lắm.

Rất nhiều phiên bản của Unix bao gồm hai trình định dạng văn bản rất tiện ích: nrofftroff. Chúng không được tìm hiểu trong chương này nhưng bạn có thể tìm hiểu tiện ích của chúng thông qua mạng.

Lệnh pr trong Unix/Linux

Lệnh pr phản ánh quá trình định dạng file trên màn hình terminal hoặc cho một máy in. Ví dụ, nếu bạn có một danh sách tên dài của một file, bạn có thể định dạng nó trên màn hình vào hai hay nhiều cột.

Dưới đây là cú pháp lệnh pr:

pr option(s) filename(s)

Lệnh pr thay đổi định dạng của file chỉ trên màn hình hoặc trên bản in, nó không chỉnh sửa file ban đầu. Bảng dưới đây liệt kê một vài tùy chọn của lệnh pr:

Chức năngMiêu tả
-kTạo ra k cột đầu ra.
-dKhoảng trống kép ở đầu ra (không phải trên tất cả phiên bản pr).
-h "header"Làm cho mục mới trở thành như một đầu đề của bản báo cáo.
-tKhử lề khi in đầu đề và các lề trên/dưới.
-l PAGE_LENGTHThiết lập độ dài trang tới PAGE_LENGTH (66) dòng. Số từ mặc định của các dòng là 56.
-o MARGINIn ôpxet mỗi dòng với khoảng cách lề là 0.
-w PAGE_WIDTHThiết lập độ rộng tới PAGE_WIDTH (72) ký tự chỉ cho đầu ra dạng nhiều cột.

Trước khi sử dụng pr, dưới đây là các nội dung của một file mẫu: food.

$cat food
Sweet Tooth
Bangkok Wok
Mandalay
Afghani Cuisine
Isle of Java
Big Apple Deli
Sushi and Sashimi
Tio Pepe's Peppers
........
$

Bây giờ chúng ta sử dụng lệnh pr để tạo một bản báo cáo có 2 cột với đầu đề là Restaurents:

$pr -2 -h "Restaurants" food
Nov  7  9:58 1997  Restaurants   Page 1

Sweet Tooth              Isle of Java
Bangkok Wok              Big Apple Deli
Mandalay                 Sushi and Sashimi
Afghani Cuisine          Tio Pepe's Peppers
........
$

Các lệnh Ip và Ipr trong Unix/Linux

Lệnh Ip hoặc Ipr in một file trên giấy từ màn hình hiển thị. Một khi bạn đã định dạng file sử dụng lệnh pr và sẵn sàng để in, bạn có thể sử dụng bất cứ lệnh nào trong 2 lệnh này để in file của bạn trên máy in kết nối được với máy tính của bạn.

Quản lý hệ thống có thể đã thiết lập máy in mặc định tại site của bạn. Để in một file có tên là food trên máy in mặc định, bạn sử dụng lệnh lp hoặc lpr như trong ví dụ sau:

$lp food
request id is laserp-525  (1 file)
$

Lệnh Ip chỉ một ID mà bạn có thể sử dụng để dừng công việc in hoặc kiểm tra trạng thái của nó.

  • Nếu bạn sử dụng lệnh Ip, bạn có thể sử dụng chức năng -nNum để in số lượng bản sao là Num. Cùng với lệnh Ipr, bạn có thể sử dụng tùy chọn -Num để thực hiện việc tương tự.

  • Nếu có nhiều máy in kết nối với máy tính của bạn, thì khi đó bạn có thể chọn một máy in bằng cách sử dụng tùy chọn –dprinter với lệnh Ip và sử dụng tùy chọn -Pprinter với lệnh Ipr cho mục đích tương tự. Tại đây, printer là tên máy in.

Các lệnh Ipstat và Ipq trong Unix/Linux

Lệnh Ipstat chỉ những gì trong hàng máy in: ID yêu cầu, cỡ file, khi các công việc được gửi cho mục đích in, và các trạng thái của các yêu cầu.

Sử dụng Ipstat -o nếu bạn muốn quan sát toàn bộ các yêu cầu đầu ra chứ không phải chỉ các yêu cầu của riêng bạn. Các yêu cầu được trình bày theo thứ tự chúng được in:

$lpstat -o
laserp-573  john  128865  Nov 7  11:27  on laserp
laserp-574  grace  82744  Nov 7  11:28
laserp-575  john   23347  Nov 7  11:35
$

Lệnh Ipq cung cấp thông tin hơi khác với lệnh Ipstat -o:

$lpq
laserp is ready and printing
Rank   Owner      Job  Files                  Total Size
active john       573  report.ps              128865 bytes
1st    grace      574  ch03.ps ch04.ps        82744 bytes
2nd    john       575  standard input         23347 bytes
$

Ở đây dòng đầu tiên hiển thị trạng thái máy in. Nếu máy in không hoạt động hoặc đang hết giấy, bạn có thể quan sát các thông tin khác trên dòng đầu tiên.

Các lệnh cancel và Iprm trong Unix/Linux

Lệnh cancel kết thúc yêu cầu in từ lệnh Ip. Lệnh Iprm kết thúc các yêu cầu của Ipr. Bạn có thể xác định hoặc ID của yêu cầu (hiển thị bởi lệnh Ip hoặc Ipq) hoặc tên của máy in.

$cancel laserp-575
request "laserp-575" cancelled
$

Để dừng các yêu cầu hiện tại đang in, bất chấp ID của nó, đơn giản bạn nhấn cancel và tên máy in:

$cancel laserp
request "laserp-573" cancelled
$

Lệnh Iprm sẽ dừng công việc đang thực hiện nếu lệnh đó do bạn đề ra. Nếu không thì, bạn có thể cung cấp các tên công việc như là tham số hoặc sử dụng một dấu gạch ngang (-) để gỡ bỏ tất cả công việc của bạn:

$lprm 575
dfA575diamond dequeued
cfA575diamond dequeued
$

Lệnh Iprm nói cho bạn về các tên file thực sự bị dỡ bỏ từ hàng in.

Gửi Email trong Unix/Linux

Bạn sử dụng lệnh mail để gửi và nhận mail. Dưới đây là cú pháp để gửi một Email:

$mail [-s subject] [-c cc-addr] [-b bcc-addr] to-addr

Bảng dưới liệt kê các chức năng quan trọng liên quan đến lệnh mail:

Chức năngMiêu tả
-sXác định subject trên dòng lệnh.
-cGởi các bản sao carbon tới danh sách của các người sử dụng. Danh sách có thể là một bản danh sách tên phân biệt bằng dấu phảy.
-bGởi các bản sao blind carbon tới danh sách. Danh sách có thể là một bản danh sách tên phân biệt bằng dấu phảy.

Dưới đây là ví dụ để gửi một Test message tới địa chỉ admin@yahoo.com.

$mail -s "Test Message" admin@yahoo.com 

Bạn sau đó được mong đợi để gõ văn bản vào thông báo của bạn, theo sau bởi một control-D tại phần bắt đầu của một dòng. Để dừng việc gõ văn bản này, đơn giản bạn gõ dấu chấm (.) như sau:

Hi,

This is a test
.
Cc: 

Bạn có thể gửi một file đầy đủ bằng cách sử dụng một toán tử điều hướng lại < như sau::

$mail -s "Report 05/06/07" admin@yahoo.com < demo.txt 

Để kiểm tra các thư đến trong hệ thống Unix của mình, bạn gõ lệnh email như sau:

$mail
no email

Loạt bài hướng dẫn học UNIX cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của: Tutorialspoint.com

Follow fanpage của team hoặc facebook cá nhân Nguyễn Thanh Tuyền để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Các bài học UNIX phổ biến khác tại VietJack:

0