Lệnh Linux là một tiện ích của hệ điều hành Linux. Tất cả các tác vụ cơ bản và nâng cao có thể được thực hiện bằng cách thực thi các lệnh. Các lệnh được thực thi trên terminal Linux. Terminal là giao diện dòng lệnh để tương tác với hệ thống, tương tự như lệnh dấu nhấn trong hệ điều hành Windows. Các lệnh trong Linux phân biệt chữ hoa và chữ thường.
Linux cung cấp một giao diện dòng lệnh mạnh mẽ hơn so với các hệ điều hành khác như Windows và MacOS. Chúng ta có thể thực hiện công việc cơ bản và công việc nâng cao thông qua terminal. Chúng ta có thể thực hiện một số công việc cơ bản như tạo file, xóa file, di chuyển file và nhiều hơn nữa. Ngoài ra, chúng ta cũng có thể thực hiện các công việc nâng cao như các tác vụ quản trị (bao gồm cài đặt gói, quản lý người dùng), các tác vụ mạng (kết nối ssh), các tác vụ bảo mật và nhiều hơn nữa.
Terminal Linux là một terminal thân thiện với người dùng vì nó cung cấp các tùy chọn hỗ trợ khác nhau. Để mở terminal Linux, nhấn các phím “CTRL + ALT + T” cùng nhau và thực thi một lệnh bằng cách nhấn phím “ENTER”.
Trong chủ đề này, chúng tôi sẽ thảo luận về 50 lệnh Linux được sử dụng phổ biến nhất với ví dụ của chúng. Những lệnh này rất hữu ích cho người mới bắt đầu và chuyên gia. Chúng tôi đã chia những lệnh này thành các phần sau để bạn có thể dễ dàng xác định cách sử dụng của chúng:
pwd
là lệnh để hiển thị đường dẫn thư mục hiện tại của người dùng. Ví dụ:
$ pwd
/home/user/Documents
Trong đó /home/user/Documents
là đường dẫn đến thư mục hiện tại.
mkdir <directory name>
là lệnh để tạo một thư mục mới với tên là <directory name>
. Ví dụ:
mkdir my_folder
Trong đó my_folder
là tên của thư mục mới được tạo ra.
rmdir <directory name>
là lệnh để xóa một thư mục rỗng có tên là<directory name>
. Ví dụ:
$ rmdir my_folder
Trong đó my_folder
là tên của thư mục cần xóa. Nếu thư mục không rỗng, lệnh rmdir
sẽ không xóa được và sẽ hiển thị một thông báo lỗi.
- ls: Lệnh này liệt kê tất cả các file và thư mục trong thư mục hiện tại. Ví dụ: nếu thư mục hiện tại là /home/user/ thì khi sử dụng lệnh ls sẽ hiển thị tất cả các file và thư mục trong /home/user/.
- cd <directory name>: Lệnh này di chuyển đến thư mục được chỉ định. Ví dụ: cd /home/user/Documents sẽ di chuyển đến thư mục Documents trong thư mục người dùng /home/user.
- touch <file name>: Lệnh này tạo một file mới với tên được chỉ định. Ví dụ: touch file.txt tạo một file mới có tên là file.txt.
- touch <file1> <file2> ….: Lệnh này tạo nhiều file mới cùng một lúc. Ví dụ: touch file1.txt file2.txt file3.txt tạo ba file mới có tên là file1.txt, file2.txt và file3.txt.
- cat > <file name>: Lệnh này tạo hoặc ghi đè nội dung vào một file mới. Ví dụ: cat > file.txt sẽ tạo một file mới có tên là file.txt và cho phép người dùng nhập nội dung vào file đó từ bàn phím.
- rm <file name>: Lệnh này xóa một file đã cho. Ví dụ: rm file.txt sẽ xóa file có tên là file.txt.
- cp <existing file name> <new file name>: Lệnh này tạo một bản sao của file đã cho với tên mới. Ví dụ: cp file.txt file_copy.txt tạo một bản sao của file file.txt và đặt tên là file_copy.txt.
- mv <file name> <directory path>: Lệnh này di chuyển file đã cho đến thư mục đã chỉ định. Ví dụ: mv file.txt /home/user/Documents di chuyển file file.txt đến thư mục Documents trong thư mục người dùng /home/user.
- rename ‘s/old-name/new-name/’ files: Lệnh này đổi tên nhiều file cùng lúc. Ví dụ: rename ‘s/.txt$/.pdf/’ *.txt đổi tên tất cả các file có đuôi .txt trong thư mục hiện tại sang đuôi .pdf.
- head <file name>: Lệnh này hiển thị nội dung của file từ đầu đến 10 dòng đầu tiên. Ví dụ: head file.txt hiển thị 10 dòng đầu tiên của file file.txt.
tail <file name>
: Lệnhtail
hiển thị nội dung cuối cùng của một tập tin (mặc định là 10 dòng cuối cùng). Ví dụ:tail myfile.txt
sẽ hiển thị 10 dòng cuối cùng của tập tin “myfile.txt”.tac <file name>
: Lệnhtac
đảo ngược thứ tự các dòng của một tập tin. Ví dụ:tac myfile.txt
sẽ hiển thị nội dung của tập tin “myfile.txt” với thứ tự các dòng được đảo ngược.more <file name>
: Lệnhmore
hiển thị nội dung của một tập tin trang từng trang. Khi hiển thị nội dung, người dùng có thể cuộn lên và xuống, chuyển sang trang tiếp theo hoặc thoát khỏi chế độ xem. Ví dụ:more myfile.txt
sẽ hiển thị nội dung của tập tin “myfile.txt” trang từng trang.less <file name>
: Lệnhless
tương tự như lệnhmore
, nhưng cho phép người dùng thực hiện các tác vụ xem và chỉnh sửa nội dung của tập tin. Ví dụ:less myfile.txt
sẽ mở tập tin “myfile.txt” trong chế độ xem và cho phép người dùng thực hiện các tác vụ xem và chỉnh sửa.su <user name>
: Lệnhsu
(Switch User) cho phép người dùng đăng nhập vào hệ thống dưới một tài khoản người dùng khác mà không cần đăng xuất khỏi tài khoản hiện tại. Ví dụ:su user2
sẽ cho phép người dùng đăng nhập vào tài khoản “user2”.id
: Lệnhid
hiển thị thông tin về người dùng hiện tại, bao gồm UID (User ID), GID (Group ID) và danh sách các nhóm mà người dùng thuộc về. Ví dụ:id
sẽ hiển thị thông tin về người dùng hiện tại.useradd username
: lệnh này được sử dụng để tạo một tài khoản người dùng mới trên hệ thống Linux. Ví dụ:useradd john
.passwd <username>
: lệnh này được sử dụng để đặt mật khẩu cho tài khoản người dùng trên hệ thống Linux. Ví dụ:passwd john
.groupadd <group name>
: lệnh này được sử dụng để tạo một nhóm mới trên hệ thống Linux. Ví dụ:groupadd developers
.cat <fileName> | cat or tac | cat or tac |. . .
: lệnh này được sử dụng để đọc nội dung của một hoặc nhiều file và xuất chúng ra ngoài. Ví dụ:cat file1.txt file2.txt | tac
.cut -d(delimiter) -f(columnNumber) <fileName>
: lệnh này được sử dụng để cắt các trường từ một file dựa trên một ký tự phân cách cụ thể. Ví dụ:cut -d"," -f2,3 filename.csv
.command | grep <searchWord>
: lệnh này được sử dụng để tìm kiếm một chuỗi cụ thể trong kết quả đầu ra của một lệnh trước đó. Ví dụ:ls -l | grep .txt
.comm <file1> <file2>
: lệnh này được sử dụng để so sánh hai file và hiển thị các dòng chung và không chung giữa chúng. Ví dụ:comm file1.txt file2.txt
.command | sed 's/<oldWord>/<newWord>/'
: lệnh này được sử dụng để thay thế các từ hoặc chuỗi trong đầu ra của một lệnh trước đó. Ví dụ:ls -l | sed 's/\.txt/\.pdf/'
.
cat <fileName> | tee <newFile> | cat or tac |.....
:
Lệnh này sẽ hiển thị nội dung của file (<fileName>
) trên màn hình và ghi vào một file mới (<newFile>
) và tiếp tục chuyển đầu ra cho các lệnh khác như cat
hoặc tac
. Ví dụ:
cat file.txt | tee newfile.txt | tac
Kết quả sẽ hiển thị nội dung của file.txt
trên màn hình, ghi lại nội dung đó vào newfile.txt
và hiển thị nội dung của newfile.txt
theo thứ tự ngược lại.
command | tr <'old'> <'new'>
:
Lệnh này sẽ thay thế các ký tự trong đầu vào (command
) từ ký tự cũ ('old'
) sang ký tự mới ('new'
). Ví dụ:
echo "hello world" | tr 'l' 'x'
Kết quả sẽ trả về chuỗi "hexxo worxd"
, ký tự l
trong chuỗi "hello world"
đã bị thay thế bằng ký tự x
.
command <fileName> | uniq
:
Lệnh này sẽ loại bỏ các dòng trùng lặp trong file (<fileName>
). Ví dụ:
cat file.txt
Kết quả
apple
orange
banana
orange
grape
Chạy lệnh dưới
cat file.txt | uniq
Kết quả
apple
orange
banana
grape
wc <file name>
:
Lệnh này sẽ đếm số dòng, số từ và số byte trong file (<file name>
). Ví dụ:
wc file.txt
Kết quả
5 15 69 file.txt
Trong đó, số 5
là số dòng, 15
là số từ và 69
là số byte.
od -b <fileName>
:
Lệnh này sẽ hiển thị nội dung của file (<fileName>
) dưới dạng ký tự bát phân (octal). Ví dụ:
od -b file.txt
Kết quả
0000000 141 160 160 154 145 012 157 162 141 156 147 145 012 142 141 156
0000020 141 156 141 012 147 162 141 160 145 012
0000032
od -t x1 <fileName>
:
Lệnh này sẽ hiển thị nội dung của file (<fileName>
) dưới dạng ký tự thập lục phân (hexadecimal). Ví dụ:
od -t x1 file.txt
Kết quả
0000000 61 70 70 6c 65 0a 6f 72 61 6e 67 65 0a 62 61 6e
- od -c <fileName>: Đây là lệnh dùng để hiển thị tập tin dưới dạng các ký tự ASCII. Ví dụ gọi file test.txt có nội dung là “Hello World”
$ od -c test.txt
0000000 H e l l o W o r l d \n
0000013
- sort <file name>: Lệnh này được sử dụng để sắp xếp các dòng trong file theo thứ tự tăng dần hoặc giảm dần. Ví dụ gọi file test.txt có nội dung như sau:
2
1
4
3
Chạy lệnh sort test.txt
ta được kết quả là:
1
2
3
4
- gzip <file1> <file2> <file3>…: Lệnh này được sử dụng để nén file. Ví dụ gọi file test.txt
gzip test.txt
Kết quả sẽ tạo ra file mới có tên là test.txt.gz
- gunzip <file1> <file2> <file3>. . : Lệnh này được sử dụng để giải nén các file đã được nén bằng gzip. Ví dụ gọi file test.txt.gz đã được nén trước đó
gunzip test.txt.gz
Kết quả sẽ tạo ra file mới có tên là test.txt
- find . -name “*.pdf”: Lệnh này được sử dụng để tìm kiếm tất cả các file có định dạng PDF trong thư mục hiện tại và tất cả các thư mục con của nó. Ví dụ tìm kiếm tất cả các file PDF trong thư mục hiện tại và tất cả các thư mục con của nó
$ find . -name "*.pdf"
locate <file name>
: Tìm kiếm đường dẫn của file hoặc thư mục có tên chỉ định trong cơ sở dữ liệu locate. Ví dụ:locate myfile.txt
và kết quả/home/user/myfile.txt
date
: Hiển thị ngày và giờ hiện tại của hệ thống. Ví dụdate
và kết quảSun Apr 03 21:25:30 UTC 2023
cal
: Hiển thị lịch cho tháng hiện tại hoặc năm chỉ định. Ví dụcal
và kết quả:
April 2023
Su Mo Tu We Th Fr Sa
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30
sleep <time>
: Dừng chương trình trong một khoảng thời gian chỉ định (tính bằng giây). Ví dụsleep 5
, kết quảcChương trình dừng trong 5 giây trước khi chạy tiếp.time
: Hiển thị thời gian mà một chương trình hoặc lệnh mất để thực thi. Ví dụtime ls
và kết quả:
real 0m0.003s
user 0m0.000s
sys 0m0.002s
zcat <file name>
: Hiển thị nội dung của file nén gzip mà không cần giải nén file đó. Ví dụzcat myfile.txt.gz
sẽ cho ra kết quả hiển thị nội dung củamyfile.txt.gz
trên màn hình.
df
: Hiển thị thông tin về các hệ thống file được gắn kết và không gắn kết. Ví dụ:
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 41152848 3945176 37220712 10% /
tmpfs 2030364 192 2030172 1% /dev/shm
/dev/sda3 20971480 1900936 17957292 10% /home
mount -t type <device> <directory>
: Lệnh dùng để gắn một thiết bị lưu trữ (device) vào một thư mục (directory) trên hệ thống file.Ví dụ: để gắn một đĩa CD-ROM vào thư mục/media/cdrom
, ta dùng lệnhmount -t iso9660 /dev/cdrom /media/cdrom
exit
: Lệnh dùng để thoát khỏi session hiện tại.clear
: Lệnh dùng để xóa màn hình console.ip a
hoặcip addr
: Lệnh dùng để hiển thị thông tin về các interface mạng trên hệ thống.ssh user_name@host(IP/Domain_name)
: Lệnh dùng để thiết lập một kết nối SSH với một host từ một tài khoản người dùng cụ thể.mail -s "Subject" <recipient address>
: Lệnh dùng để gửi thư điện tử từ console.ping <destination>
: Lệnh dùng để kiểm tra kết nối mạng tới một đích cụ thể bằng gửi các gói tin ICMP echo request và chờ đợi phản hồi từ đích.host <domain name> or <ip address>
: Lệnh dùng để tìm kiếm thông tin về tên miền hoặc địa chỉ IP của một máy chủ trong hệ thống DNS.
Kết quả của mỗi lệnh sẽ phụ thuộc vào tham số đầu vào của từng lệnh cũng như môi trường và cấu hình hệ thống.