Tất cả các câu lệnh trong linux

Sau đây là hơn 37 các câu lệnh cơ bản trong Linux terminal. Hơn nữa, các lệnh Linux toàn tập trong bài viết này cũng có thể được sử dụng đối với macOS command line. Nếu bạn mới bắt đầu sử dụng Linux thì đây là bài viết cực kỳ hữu ích dành cho bạn.

Các câu lệnh trong Linux

Có rất nhiều các câu lệnh trong Linux (Linux command), tuy nhiên ở đây Vietnix đã chọn ra 37 các câu lệnh phổ biến thường dùng trong Linux, để tất cả mọi người có thể sử dụng command prompt của Linux dễ dàng hơn.

Tất cả các câu lệnh trong linux
Tổng hợp các câu lệnh trong hệ điều hành Linux cơ bản

Trước khi tham khảo các câu lệnh thường dùng trong Linux, nếu bạn dùng VPS từ xa, hãy mở PuTTY để truy cập SSH vào giao diện dòng lệnh. Còn nếu bạn dùng Linux local, trong phần Utilities để mở giao diện dòng lệnh.

Tổng hợp các câu lệnh trong Linux ở bài viết này được sắp xếp theo thứ tự trong bảng chữ cái, chứ không phải theo mức độ hữu dụng của các câu lệnh cơ bản trong Linux. Để tìm hiểu rõ hơn về mục đích sử dụng của các Linux command.

alias

Lệnh alias giúp bạn đặt tên cho một lệnh hoặc chuỗi command Linux. Sau đó, hãy nhập tên và shell sẽ thực thi lệnh hay chuỗi các lệnh đó.

alias cls=clear

Lệnh trên thiết lập một alias có tên là cls, được dùng thay cho tên clear. Khi nhập cls, nó sẽ xóa toàn bộ màn hình, hoàn toàn tương tự với việc nhập clear. Tất nhiên, alias giúp tốc độ viết của chúng ta nhanh hơn.

Các alias có thể phức tạp hơn nhiều so với ví dụ ở trên. Sau đây là ví dụ về một alias có tên là pf (viết tắt của process find).

Lưu ý: Đặt dấu ngoặc kép ở trước và sau các lệnh có chứa kí tự “space”. Alias này sử dụng lệnh ps để liệt kê các process đang chạy, sau đó pipe chúng qua lệnh grep. Tiếp đến, lệnh grep sẽ tìm các entry ở trong output từ ps phù hợp với tham số $1.

alias pf="ps -e | grep $1"

Bên cạnh đó, nếu ta muốn tìm process ID (PID) của process shutter – hoặc xem thử shutter có đang chạy hay không?. Hãy sử dụng alias như dưới đây.

  • Nhập pf, dấu cách và tên của process cần kiểm tra.
pf shutter
Tất cả các câu lệnh trong linux
Tìm process ID

Các alias được định nghĩa ở trong command line đều sẽ mất tác dụng sau khi terminate. Để làm cho các alias luôn khả dụng, hãy thêm chúng vào trong file.bash_aliases trong home directory.

cat

Lệnh cat (viết tắt của concatenate) sẽ liệt kê nội dung của file vào trong terminal window. Việc này sẽ nhanh hơn nhiều so với việc mở các file ở trong editor. Và dĩ nhiên, sẽ không xảy ra khả năng làm thay đổi nội dung của các file đó.

  • Để đọc nội dung của file .bash_log_out, nhập lệnh sau khi directory hiện tại là home directory:
cat .bash_logout
Tất cả các câu lệnh trong linux
Đọc nội dung của file .bash_logout

Đối với những file dài hơn số dòng ở trong terminal, các text sẽ hiện ra rất nhanh. Do đó, ta có thể pipe các output từ cat thông qua less để dễ kiểm soát hơn.

Bằng lệnh less, ta có thể cuộn lên hoặc xuống các file thông qua các phím mũi tên lên xuống, hoặc PgUpPgDn, HomeEnd. Cuối cùng, nhập q để thoát khỏi less.

cat .bashrc | less
Tất cả các câu lệnh trong linux

cd

Lệnh cd (change directory) sẽ thay đổi directory hiện tại. Nói cách khác, nó sẽ đưa ta đến một vị trí mới ở trong filesystem.

  • Để đi đến một directory khác nằm trong directory hiện tại, chỉ cần nhập cd và tên của directory cần đi đến.
cd work
  • Để đi đến một directory nằm đâu đó trong filesystem directory tree, nhập đường dẫn đến directory đó, bắt đầu bằng dấu /.
cd /usr/local/bin
  • Để nhanh chóng quay về home directory, dùng dấu ~ như một tên directory.
cd ~
Tất cả các câu lệnh trong linux

Mẹo: dùng hai chấm dấu .. để đi đến parent directory của directory hiện tại. Nhập lệnh sau để đi lên một directory:

cd .. 

Bây giờ, giả sử ta đang ở trong một directory nào đó, nhưng parent directory lại còn có nhiều directory khác ở trong, gồm cả directory hiện tại. Để đi đến một trong các directory đó, dùng ký hiệu ..

cd ../games
Tất cả các câu lệnh trong linux

chmod

Lệnh chmod sẽ đặt các flag file permission (quyền truy cập file) lên một file hoặc folder. Flag đó sẽ định nghĩa những người có thể đọc, viết hoặc thực thi file. Khi liệt kê file với option -l (long format), ta sẽ thấy một chuỗi các kí tự có dạng như sau:

-rwx rwx rwx

Nếu kí tự đầu tiên là a thì item là một file, nếu là d thì item đó là một directory. Phần còn lại của chuỗi là ba tập hợp của ba kí tự. Tính từ bên trái, tập hợp đầu tiên biểu diễn quyền truy cập của owner, tập hợp thứ hai là quyền truy cập của group, và cuối cùng là others. Trong mỗi tập hợp, kí tự r có nghĩa là read (đọc), w là write (viết), và x là execute (thực thi).

Nếu kí tự r, w hoặc x có mặt, quyền truy cập file sẽ được cấp. Còn nếu đó là kí tự a, thì quyền truy cập sẽ không được cấp.

Có một cách để sử dụng chmod là dùng để cấp quyền truy cập theo ý muốn đến owner, group hoặc others, dưới dạng các số có ba chữ số. Số ngoài cùng bên trái biểu diễn owner. Tiếp đến lần lượt là group và others. Dưới đây là các chữ số có thể được sử dụng:

  • 0: Không được cấp quyền
  • 1: Quyền thực thi
  • 2: Quyền viết
  • 3: Viết và thực thi
  • 4: Chỉ đọc
  • 5: Đọc, thực thi
  • 6: Đọc, viết
  • 7: Đọc, thực thi và viết

Hãy xét ví dụ với file example.txt, với cả ba tập hợp kí tự đều là rwx. Do đó, ai cũng có quyền đọc, viết và thực thi file.

Để đặt quyền truy cập thành đọc, viết và thực thi dưới dạng số (7) cho owner; đọc và viết (6) cho group; đọc, thực thi (5) cho others, hãy dùng số 765 với lệnh chmod:

chmod -R 765 example.txt
Tất cả các câu lệnh trong linux

Hoặc đặt quyền đọc, ghi, thực thi cho owner; đọc và ghi cho group và others, dùng lệnh chmod với 766:

chmod 766 example.txt

chown

Lệnh chown (change owner) cho phép thay đổi owner và group owner của một file. Liệt kê file example.txt bằng ls -l, ta sẽ thấy dave dave ở trong phần mô tả của file. Chữ đầu tiên để chỉ tên owner của file, trong trường hợp này chính là dave. Mỗi user đều có một group mặc định được tạo khi ta tạo user. Kí tự thứ hai cũng là dave, tức là owner của group đó. Đồng thời, dave cũng là người dùng duy nhất của group, tức là file này không được chia sẻ với bất kỳ group user nào.

Ta có thể dùng lệnh chown để thay đổi cả owner lẫn group của một file. Ta cần cung cấp tên của owner và group, cách nhau bởi dấu : . Sau đó, sử dụng lệnh sudo để thực hiện. Để đặt dave là owner của file, mary là group owner, hãy sử dụng lệnh sau:

sudo chown dave:mary example.txt
Tất cả các câu lệnh trong linux

Bây giờ, để đổi owner lẫn group owner thành mary, dùng lệnh như dưới đây:

sudo chown mary:mary example.txt

Ngược lại, để đổi về lại dave:

sudo chown dave:dave example.txt

curl

Trong các câu lệnh trong Linux, lệnh curl là một công cụ để truy xuất thông tin và file từ Uniform Resource Locators (URL) hoặc từ địa chỉ internet.

curl command có thể không được cung cấp như một phần tiêu chuẩn của bản phân phối Linux. Do đó, hãy dùng apt-get để cài đặt package curl vào hệ thống nếu đang sử dụng Ubuntu hoặc các bản phân phối dựa trên Debian khác. Đối với những bản phân phối Linux khác, dùng công cụ quản lý package để cài đặt.

sudo apt-get install curl

Giả sử ta muốn truy xuất một file duy nhất từ trong GitHub repository. Dĩ nhiên không có một cách chính thức nào có thể làm việc này. Do đó ta cần clone toàn bộ repository. Tuy nhiên, bằng lệnh curl, ta có thể dễ dàng thực hiện.

curl https://raw.githubusercontent.com/torvalds/linux/master/kernel/events/core.c -o core.c
Tất cả các câu lệnh trong linux

Nếu không muốn theo dõi quá trình cài đặt, dùng option -s (silent).

curl -s https://raw.githubusercontent.com/torvalds/linux/master/kernel/events/core.c -o core.c
Tất cả các câu lệnh trong linux

df

Lệnh df cho biết kích thước, dung lượng đã sử dụng và dung lượng còn trống ở trên một mounted filesystem của máy tính.

Hai option phổ biến nhất là -h (human readable) và -x (exclude). Trong đó, humand-readable sẽ hiển thị kích thước dưới dạng Mb hoặc Gb thay vì byte. Còn option exclude cho phép bỏ qua các filesystem không cần thiết.

Ví dụ, xét pseudo-filesystem squashfs được tạo khi cài đặt một ứng dụng bằng lệnh snap.

df -h -x squashfs
Tất cả các câu lệnh trong linux

diff

Lệnh diff so sánh hai text file và chỉ ra những điểm khác biệt. Có khá nhiều option khác nhau để tùy chỉnh hiển thị theo yêu cầu.

Option -y (side by side) hiển thị sự khác nhau giữa các dòng cạnh nhau. -w (width) cho phép điều chỉnh số dòng tối đa. Giả sử ta có hai file tên là alpha1.txt và alpha2.txt. Lệnh --suppress-common-lines ngăn diff liệt kê những dòng giống nhau, giúp ta chỉ tập trung vào những điểm khác biệt.

diff -y -W 70 alpha1.txt alpha2.txt --suppress-common-lines
Tất cả các câu lệnh trong linux

echo

Lệnh echo in ra (echo) một chuỗi các text vào trong terminal window.

Lệnh sau sẽ in ra các chữ “A string of text” vào trong terminal:

echo A string of text

Bên cạnh đó, lệnh echo cũng có thể hiển thị giá trị của biến môi trường, ví dụ như $USER, $HOME, $PATH. Các biến này chứa giá trị của tên người dùng, home directory và đường dẫn dùng để tìm các lệnh phù hợp khi người dùng nhập vào trong command line.

echo $USER
echo $HOME
echo $PATH 
Tất cả các câu lệnh trong linux

Lệnh dưới đây dùng để phát ra tín hiệu: trong đó option -e (escape) diễn giải kí tự a đã escape thành một kí tự “bell” (bell character).

echo -e "\a"

Bên cạnh đó, lệnh echo cũng rất hữu ích trong shell script. Một script có thể dùng lệnh này để tạo ra các output có thể nhìn thấy được, nhằm hiển thị quá trình hoặc kết quả của scipt khi nó được thực thi.

exit

Lệnh exit là một lệnh Linux cơ bản trong các câu lệnh Linux. Nó có nhiệm vụ đóng một cửa sổ terminal lại, kết thúc quá trình thực thi của shell script, hoặc đăng xuất khỏi phiên truy cập SSH từ xa.

exit
Tất cả các câu lệnh trong linux

find

Ta có thể dùng lệnh find để tìm các file có tồn tại, nhưng không thể nhớ vị trí của chúng. Trước hết, ta cần cho lệnh find biết nên bắt đầu tìm kiếm từ đâu, cũng như file cần tìm kiếm. Trong ví dụ này, . là folder hiện tại, còn option -name ra lệnh cho find tìm kiếm các file có tên khớp với mẫu tìm kiếm.

Bên cạnh đó, ta cũng có thể sử dụng các wildcard. Trong đó, * là bất kỳ chuỗi ký tự nào, còn ? là bất kỳ kí tự đơn lẻ nào đó. Ví dụ này sử dụng *one* cho mọi file có chứa chuỗi kí tự “one“. Có thể là những từ như bones, stones,…

find . -name *one*
Tất cả các câu lệnh trong linux

Có thể thấy ở đây, lệnh find trả về một danh sách những kết quả khớp. Trong đó có một directory gọi là Ramones. Ta có thể ra lệnh cho find thu hẹp kết quả tìm kiếm thành file, bằng option -type và tham số f (file):

find . -type f -name *ones*

Nếu không muốn kết quả bị case-sensitive, dùng option -iname (insensitive name):

find . -iname *wild*

finger

Lệnh finger đưa ra một tập hợp các thông tin ngắn gọn (dump) về người dùng, bao gồm cả thời gian truy cập lần cuối, home directory, tên tài khoản.

Tất cả các câu lệnh trong linux

free

Lệnh free cung cấp một bản tóm tắt về việc sử dụng bộ nhớ với máy tính áp dụng với cả RAM vẫn swap memory. Option -h (human) dùng để cung cấp các chữ số và đơn vị thân thiện với con người. Nếu không, các con số sẽ được hiển thị dưới dạng byte.

free -h 
Tất cả các câu lệnh trong linux

grep

grep tìm kiếm các dòng có chứa một mẫu tìm kiếm nào đó. Ở lệnh alias ở trên, ta đã dùng grep để tìm trong output của một chương trình khác, ps. Lệnh grep còn có thể được dùng để tìm nội dung của các file. Trong ví dụ dưới đây, grep dùng để tìm chữ “train” ở trong mọi text file của directory hiện tại.

grep train *.txt

Output của lệnh sẽ liệt kê ra tên của file và hiển thị những dòng khớp. Các text khớp đều được highlight.

Tất cả các câu lệnh trong linux

groups

Lệnh groups cho ta biết một người dùng hiện đang ở trong những group nào.

groups dave
groups mary
Tất cả các câu lệnh trong linux

gzip

Lệnh gzip có nhiệm vụ nén các file. Theo mặc định, nó sẽ xóa file gốc và chỉ để lại phiên bản đã được nén. Để giữ cả hai bản, dùng option -k (keep).

gzip -k core.c
Tất cả các câu lệnh trong linux

head

Lệnh head đưa ra một danh sách 10 dòng đầu tiên của file. Nếu muốn xem thêm hoặc xem ít hơn, dùng option -n (number). Trong ví dụ này, head được dùng với mặc định là 10 dòng. Sau đó là 5 dòng:

head -core.c
head -n 5 core.c
Tất cả các câu lệnh trong linux

history

Lệnh history liệt kê các lệnh trong Linux đã được sử dụng trước đây trong command line. Ta có thể sử dụng lại bất kỳ lệnh nào từ history bằng cách nhập một dấu !, theo sau là số thứ tự của lệnh đó ở trong danh sách.

!188
Tất cả các câu lệnh trong linux

Hoặc nhập hai dấu !! để lặp lại lệnh ngay trước đó.

!!

kill

Lệnh kill cho phép terminate một process từ command line. Ta có thể sử dụng lệnh này bằng cách nhập process ID (PID) của process đó vào trong lệnh kill. Lưu ý: đừng kill process willy-nilly! Trong ví dụ này, giả sử process shutter đang bị treo và cần phải dừng.

Trước hết, tìm PID của shutter bằng psgrep như ở phần lệnh alias như sau:

ps -e | grep shutter

Sau khi xác định được PID của nó (1692), hãy kill process đó như sau:

kill 1692
Tất cả các câu lệnh trong linux

less

Lệnh less cho phép xem các file mà không cần mở editor. Bằng lệnh less, ta có thể cuộn trước hoặc sau trong file bằng cách phím mũi tên lên xuống, PgUPPgDn hoặc HomeEnd. Nhấn Q để có thể quit khỏi lệnh less.

1Trước hết, cung cấp cho lệnh một tên như sau:

less core.c
Tất cả các câu lệnh trong linux

Bên cạnh đó, ta cũng có thể pipe output từ các lệnh khác vào trong less. Để xem output từ ls cho danh sách toàn bộ hard drive, nhập lệnh sau:

ls -R / | less
Tất cả các câu lệnh trong linux

Dùng dấu / để tìm về phía trước của file, và ngược lại với kí tự ?.

ls

Trong các câu lệnh trong Linux, đây chắc hẳn là lệnh đầu tiên mà phần lớn người dùng Linux gặp. Lệnh này có nhiệm vụ liệt kê các file và folder có ở trong directory được chỉ định. Theo mặc định, ls sẽ tìm ở trong directory hiện tại. Bên cạnh đó, còn có nhiều option khác có thể được sử dụng với lệnh ls. Trong đó phổ biến có:

  • Liệt kê các file và folder trong directory hiện tại:
ls
  • Liệt kê các file và folder trong directory hiện tại, cùng option -l để hiển thị chi tiết hơn
ls -l
  • Option -h (human) để hiển thị kích thước các file thân thiện hơn với con người:
ls -lh
  • Liệt kê cả các file bị ẩn bằng option -a (all files):
ls -lha

man

Như đã đề cập ở trên, lệnh man hiển thị một “man page” (trang manual) cho một lệnh ở dạng less. Các man page này chính là user manual cho lệnh đó. Vì man sử dụng lệnh less để hiển thị các trang, nên ta cũng có thể dùng khả năng tìm kiếm của lệnh less.

Lấy ví dụ, để xem man page cho chown, dùng lệnh sau:

man chown

Dùng các phím mũi tên lên xuống, PgUp – PgDn để cuộn lên xuống trong tài liệu. Và cuối cùng , nhấn q (quit) để thoát hoặc h (help) để được trợ giúp.

Tất cả các câu lệnh trong linux

mkdir

Lệnh mkdir (make directory) cho phép tạo các directory mới ở trong filesystem. Người dùng phải nhập tên của directory mới vào trong mkdir. Nếu directory mới không nằm trong directory hiện tại, hãy cung cấp thêm đường dẫn để đi đến directory mới đó.

Để tạo hai directory mới trong directory hiện tại, tạm gọi là “invoices” và “quotes“, dùng các lệnh như sau:

mkdir invoices
mkdir quotes
Tất cả các câu lệnh trong linux

Bây giờ, tạo một directory mới tên là “2021” bên trong directory “invoices“:

mkdir invoices/2021

Giả sử parent directory không tồn tại, hãy cùng option -p (parents) để mkdir có thể tạo ra tất cả parent directory cần thiết. Ở ví dụ dưới là câu lệnh để tạo ra directory “2021” bên trong “yearly“, và nằm trong directory “quotes“. Dù directory “yearly” không tồn tại, nhưng ta có thể dùng lệnh mkdir để tạo ra tất cả directory cần thiết chỉ với 1 câu lệnh:

mkdir -p quotes/yearly/2021

mv

Lệnh mv cho phép di chuyển các file và directory, đồng thời còn có thể đổi tên của các file.

Để di chuyển một file, ta cần cho lệnh mv biết đích đến. Ví dụ ta cần di chuyển file apache.pdf từ directory “~/Document/Ukulele” và đặt vào trong directory hiện tại (.):

mv ~/Document/Ukulele/Apache.pdf
Tất cả các câu lệnh trong linux

Để đổi tên, hãy di chuyển nó vào một file mới, với tên mới

mv Apache.pdf The_Shadows_Apache.pdf

Và ta có thể kết hợp việc di chuyển và đổi tên file vào 1 câu lệnh:

mv ~/Documents/Ukulele/Apache.pdf ./The_Shadows_Apache.pdf

passwd

Lệnh passwd cho phép thay đổi password của một user, hoặc một user account khác bằng sudo. Sau đó, ta sẽ được yêu cầu nhập mật khẩu hai lần.

sudo passwd mary
Tất cả các câu lệnh trong linux

ping

Lệnh ping cho phép xác minh ta có đang kết nối với thiết bị mạng khác hay không. Lệnh này chủ yếu được dùng để khắc phục sự cố mạng. Người dùng sử dụng lệnh ping cần cung cấp địa chỉ IP hoặc tên máy của thiết bị khác.

ping 192.168.4.18

Lệnh ping sẽ tiếp tục chạy cho đến khi người dùng sử dụng tổ hợp phím Ctrl + C để dừng nó lại.

Tất cả các câu lệnh trong linux

Dưới đây là quá trình của lệnh:

  • Thiết bị tại địa chỉ IP 192.168.4.18 đang phản hồi ping request, gửi các packet 64 byte trở lại.
  • Việc đánh số thứ tự của giao thức ICMP cho phép ta kiểm tra các response bị lỡ (dropped packet).
  • Số TTL là “time to live” của một packet. Mỗi khi packet đi qua một router, con số này thường sẽ giảm đi 1 đơn vị. Sau khi đạt đến số 0, packet sẽ được bỏ. Mục đích của việc này là nhằm ngăn chặn sự cố loopback trong mạng.
  • Giá trị time là tổng thời gian packet đi từ máy tính đến thiết bị, và ngược lại. Nói một cách đơng giản thì time càng thấp càng tốt.

Để yêu cầu lệnh ping chạy một số lần ping attempt nhất định, dùng option -c (count):

ping -c 5 192.168.4.18

Để nghe một ping, dùng option -a (audible)

ping -a 192.168.4.18

ps

ps command có nhiệm vụ liệt kê các process đang chạy. Nếu không có option nào được bổ sung, ps sẽ liệt kê mọi process đang chạy ở trong shell hiện tại.

ps
Tất cả các câu lệnh trong linux

Để xem tất cả process liên quan đến một user cụ thể nào đó, dùng option -u (user). Đôi khi ta cần nhiều user khác nhau, nên lệnh có thể sẽ tương đối dài dòng. Do đó, pipe nó qua lệnh less như sau:

ps -u dave | less
Tất cả các câu lệnh trong linux

Và để xem tất cả process đang chạy, dùng option -e (every process):

ps -e | less

pwd

Lệnh pwd (print working directory) sẽ in directory đang làm việc từ directory root:

pwd
Tất cả các câu lệnh trong linux

shutdown

Lệnh shutdown cho phép người dùng shutdown hoặc reboot lại hệ thống Linux từ terminal.

Dùng lệnh shutdown mà không có tham số sẽ shutdown máy tính trong vòng 1 phút.

shutdown
Tất cả các câu lệnh trong linux

Hoặc để shut down máy ngay lập tức, dùng tham số now:

shutdown now
Tất cả các câu lệnh trong linux

Bên cạnh đó, ta cũng có thể đặt lịch shutdown và thông báo cho tất cả người dùng đã đăng nhập. Cung cấp thời gian cho lệnh để đặt lịch shutdown, nó có thể là một con số với đơn vị là phút (+90) hoặc thời gian chính xác (23:00). Tất cả text message đều được gửi đến những người dùng đã đăng nhập khác.

shutdown 23:00 Shutdown tonight at 23:00, save your work and log out before then!
Tất cả các câu lệnh trong linux

Để hủy việc shutdown, dùng option -c (cancel). Dưới đây là một shutdown được đặt lịch 15 phút kể từ bây giờ – sau đó được hủy bỏ:

shutdown +15 Shutting down in 15 minutes!
shutdown -c
Tất cả các câu lệnh trong linux

ssh

Ta có thể dùng lệnh ssh để tạo một kết nối đến máy tính Linux từ xa, và đăng nhập vào tài khoản. Trước hết ta cần cung cấp username của mình, cùng với địa chỉ IP và tên domain của máy tính ở xa. Trong ví dụ dưới đây, user mary đang đăng nhập vào máy tính tại địa chỉ 192.168.4.2. Khi kết nối được thiết lập, người dùng này sẽ được yêu cầu nhập mật khẩu:

ssh 
Tất cả các câu lệnh trong linux

Sau đó, username và password của mary sẽ được xác thực để đăng nhập.

Bây giờ, giả sử mary dùng lệnh w để xem các user hiện tại ở trong hệ thống. Khi đó, mary cũng sẽ có trong danh sách vì được kết nối từ pts/1 (pseudo-terminal slave). Do đó, đây không phải là terminal được kết nối trực tiếp đến máy tính.

Để đóng phiên lại, mary nhập lệnh exit và quay về shell trên máy tính “Nostromo”.

w
exit
Tất cả các câu lệnh trong linux

sudo

Lệnh sudo là bắt buộc khi ta thực hiện các tác vụ cần quyền root hay superuser. Chẳng hạn như thay đổi mật khẩu cho người dùng khác:

sudo passwd maryb
Tất cả các câu lệnh trong linux

tail

Lệnh tail cung cấp danh sách 10 dòng cuối cùng của một file. Nếu muốn xem nhiều hoặc ít hơn, dùng option -n. Trong ví dụ này, chúng ta sử dụng lệnh tail với giá trị mặc định là 10 dòng, sau đó là 5 dòng:

tail core.c
tail -n 5 core.c
Tất cả các câu lệnh trong linux

tar

Lệnh tar cho phép tạo một file lưu trữ (còn gọi là tarball) chứa nhiều file khác. Việc này đặc biệt hữu ích khi phân phối tập hợp các file. Bên cạnh đó, ta cũng có thể dùng tar để giải nén cả file. Hoặc là sử dụng tar để nén các file lưu trữ.

Để tạo một file lưu trữ (archive), trước hết cần cung cấp cho lệnh tar các file cần có ở trong file lưu trữ, và tên của file lưu trữ đó.

Trong ví dụ dưới đây, ta sẽ lưu trữ tất cả các file trong directory Ukulele (chính là directory hiện tại):

Tất cả các câu lệnh trong linux

Sử dụng các option -c (create) và -v (verbose) cho lệnh. Trong đó, verbose cung cấp một số feedback trực quan bằng cách liệt kê các file vào trong terminal khi nó được thêm vào trong archive. Option -f (filename) để đặt tên cho archive đó, ví dụ như songs.tar.

tar -cvf songs.tar Ukulele/
Tất cả các câu lệnh trong linux

Tiếp đến, có hai cách để tar có thể nén các archive. Đầu tiên là dùng option -z (gzip) để nén các archive sau khi nó được tạo. Ta có thể thêm hậu tố “.gz” cho archive này, để người dùng khác khi giải nén các file có thể biết nên truyền lệnh nào vào tar để truy xuất file chính xác.

tar -cvzf songs.tar.gz Ukulele/
Tất cả các câu lệnh trong linux

Các file sau đó cũng sẽ được liệt kê vào trong terminal khi chúng được thêm vào archive. Tuy nhiên, quá trình tạo archive sẽ lâu hơn một chút vì có thêm thao tác nén.

Để tạo một archive file được nén bằng thuật toán nén cao cấp hơn, kích thước archive nhỏ hơn, hãy dùng option -j (bzip2). Tất nhiên, quá trình tạo file sẽ lâu hơn so với gzip:

tar -cvjf songs.tar.bz2 Ukulele/
Tất cả các câu lệnh trong linux

Đối với việc lưu trữ một lượng lớn các file, ta có thể lựa chọn giữa -z (nén vừa phải, tốc độ tốt) hoặc -j (nén tốt hơn, nhưng chậm hơn).

Có thể thấy ở dưới đây, file .tar có dung lượng lớn nhất, còn tar.gz thì nhỏ hơn, tar.bz2 hiển nhiên có dung lượng thấp nhất.

Tất cả các câu lệnh trong linux

Tiếp theo, để giải nén các archive file, hãy sử dụng option -x (extract). Ngoài ra ta cũng có thể sử dụng các option -v-f như ở trên. Dùng ls để xác nhận loại archive để giải nén các file:

ls
tar -xvf songs.tar
Tất cả các câu lệnh trong linux

Các file cũng sẽ được thêm vào terminal khi giải nén.

Để có thể giải nén các file từ một archive tar.gz, dùng option -z (gzip):

tar -xvzf songs.tar.gz
Tất cả các câu lệnh trong linux

Và cuối cùng, dùng option -j để giải nén tar.bz2:

tar -xvjf songs.tar.bz2
Tất cả các câu lệnh trong linux

top

Tiếp theo, lệnh top hiển thị dữ liệu của máy Linux theo thời gian thực. Ở phía trên màn hình là phần tóm tắt trạng thái.

Dòng đầu tiên cho biết thời gian và khoảng thời gian máy tính đã chạy, số lượng người dùng đã đăng nhập, mức tải trung bình trong một/ năm/ mười phút vừa qua.

Dòng thứ hai hiển thị số lượng tác vụ và trạng thái: running, stopped, sleeping hay zombie.

Tiếp đến, dòng thứ ba cho ta biết thông tin của CPU. Trong đó:

  • us: giá trị là thời gian CPU xử lý các process cho user, trong user space.
  • sy: giá trị là thời gian CPU chạy các process kernel space của hệ thống.
  • ni: thời gian CPU thực thi các process với giá trị được đặt thủ công.
  • id: thời gian nghỉ (idle time) của CPU.
  • wa: thời gian CPU đợi I/O hoàn tất.
  • hi: thời gian CPU xử lý hardware interrupt.
  • si: thời gian CPU xử lý software interrupt.
  • st: thời gian bị mất của CPU do chạy máy ảo (steal time).

Tiếp theo, dòng thứ tư là tổng dung lượng bộ nhớ vật lý, dung lượng còn trống, đã sử dụng, đã buffer hoặc cache.

Dòng thứ năm là tổng dung lượng của swap memory, dung lượng còn trống, đã sử dụng, khả dụng (tính cả dung lượng có thể phục hồi từ cache).

Tất cả các câu lệnh trong linux

Người dùng có thể nhấn nút E để phần hiển thị thân thiện với người dùng hơn, tức là hiển thị số thay vì byte.

Trong đó, các cột biểu thị:

  • PID: Process ID.
  • USER: Tên owner của process.
  • PR: Process priority – quyền ưu tiên của process.
  • NI: Nice value của process.
  • VIRT: Virtual memory – bộ nhớ ảo được dùng bởi process.
  • RES: Resident memory – bộ nhớ vật lý được dùng bởi process.
  • SHR: Shared memory dùng bởi process.
  • S: Status – trạng thái của process.
  • %CPU: thời gian CPU được chia cho process trong lần cập nhật cuối.
  • %MEM: bộ nhớ vật lý được chia cho process.
  • TIME+: tổng thời gian CPU mà tác vụ đã dùng (trong một phần trăm giây).
  • COMMAND: command name hoặc command line (name + option).

Các trường ở trong cột S (trạng thái của process):

  • D: Sleep (liên tục).
  • R: Đang chạy.
  • S: Sleep.
  • T: Dừng.
  • Z: Zombie.

Cuối cùng, nhấn Q để thoát khỏi top.

uname

Bằng lệnh uname, người dùng có thể lấy được một số thông tin hệ thống liên quan đến máy tính Linux đang sử dụng. Trong đó, các option phổ biến của lệnh bao gồm:

  • -a (all) để xem mọi thông tin.
  • -s (kernel name) để xem loại của kernel.
  • -r (kernal release) để xem kernel release.
  • -v (kernel version) để xem kernel version
uname -a # all info
uname -s # kernel name
uname -r # kernel release
uname -v # kernel version
Tất cả các câu lệnh trong linux

w

Lệnh w liệt kê những user đã đăng nhập hiện tại, uptime server và load average.

w
Tất cả các câu lệnh trong linux

whoami

Lệnh whoami cho biết ta đang đăng nhập với tư cách gì, hoặc ai đã đăng nhập vào một Linux terminal không có người điều khiển.

whoami
Tất cả các câu lệnh trong linux

Tổng kết

Việc làm quen các câu lệnh trong Linux cần thực hành tương đối nhiều để có thể nhanh chóng làm quen. Hy vọng rằng bài viết này có thể giúp bạn sử dụng các câu lệnh trong hệ điều hành Linux thành thạo hơn. Chúc các bạn thành công!

Theo Howtogeek