Bài 1: Các lệnh cơ bản trong linux
1.Tổng quan về lệnh trong linux
- Cấu trúc lệnh trong linux gồm 3 phần: <comand>[options][argument]
- Comand (Lệnh):
- Là tên file chứa mã lệnh. Thường là 1 động từ hoặc viết tắt đại diện cho chức năng của lệnh.
- Tên lệnh phân biệt viết hoa và viết thường.
- Mỗi lệnh kết thúc bởi phím Enter.
- Dùng dấu ; để phân cách 2 lệnh trên 1 dòng. Dùng | nếu có gắn kết dữ liệu đầu vào.
printenv | grep HOME
- Dùng \ và phím enter để viết lệnh trên nhiều dòng.
- Options ( Tùy chọn)
- Là tập ký tự định nghĩa trước để điều khiển lệnh theo ý muốn người dùng.
- Không phân biệt thứ tự tham số. VD: ls -l -a tương đương ls -a -l
- Gồm 2 loại:
- Đơn ký tự: Đi ngay sau dấu "-" lệnh sẽ tách các ký tự sau dấu "-" thành tham số.Dùng trong gõ lệnh nhanh. VD: ls -la tương đương ls -l -a
- Đa ký tự: Đi ngay sau dấu "--" dùng để diễn giải ý nghĩa việc sự lựa chọn tùy chọn của người dùng.
- Arguments ( Tham số)
- Là các từ ngữ có ý nghĩa nhưng chưa xác định khi lập trình, dùng để điều khiển lệnh nhừ options.
- VD: cd /HOME thì /HOME chính là tham số.
- Đường dẫn:
- Đường dẫn tuyệt đối:
- Là đường dẫn duy nhất tính từ thư mục gốc đến nó thông qua các thư mục trung gian.
- Đường dẫn tương đối:
- Là đường dẫn khi kết hợp với thư mục hiện hành thành đường dẫn tuyệt đối:
- Absolute Path = Working Dir + [ / ] + Relative Path
- Cách gõ nhanh:
- Dùng <TAB>. VD: Muốn gõ lệnh ls thì ta gõ l rồi gõ <TAB>
Để kiểm tra thông tin của các lệnh trong terminal ta có thể dùng một vài câu lệnh sử dụng thư viện sau:
- man Tên_Lệnh . VD man ls
- Tên_Lệnh --help: more. VD: ls --help:more
- info Tên_Lệnh VD: info ls
- whatis Tên_Lệnh VD: whatis ls
1. useradd
- Tạo một người dùng mới
- Vd: useradd linux
- Chuyển người dùng từ user sang root hoặc từ root sang người dùng
- VD: su ( chuyển từ user sang tài khoản root sau khi nhập đúng password)
- su linux ( chuyển từ root sang user có tên là linux)
- Liệt kê tên các thư mục, tập tin
- VD: ls
- Tạo thư mục mới
- VD: mkdir linux
5.rmdir
- Xóa thư mục có trong thư mục hiện tại
- VD: rmdir linux
6.rm
- Xóa tập tin hoặc thư mục bất kỳ chỉ cần gõ đúng đường dẫn.
- rm <tên tập tin> _ Xóa tập tin
- rm -r <thư mục> _ Xóa thư mục
- rm -rf <thư mục > _ Xóa các file có bên trong thư mục
7.cp
- cp <nguồn> <đích>
- Sao chép tập tin/ thư mục
- Sử dụng cp -r <thư mục nguồn> <thư mục đích> để sao chép tất cả file bên trong thư mục
8.mv
- mv <nguồn><đích>
- Di chuyển file/ thư mục từ vị trí này sang vị trí khác.
- Dùng để đổi tên nếu nguồn và đích giống nhau.
- VD: mv linux window
9.pwd
- Hiển thị thư mục hiện tại
- VD: pwd
- Mở thư mục.
- VD: cd /Desktop
- cat <tên tập tin>
- Xem tập tin
- VD: cat hello.php
- tail <tên tập tin>
- Mặc định in ra 10 dòng tập tin đó.
- Sử dụng tail -n N <tên tập tin> . N là số dòng cần in.
- less <tên tập tin>
- In toàn bộ tập tin với nhiều trang.
- grep <từ khóa> <tên file>
- Dùng để tìm từ khóa cần tìm trong 1 file
- grep -i <từ khóa > <tên file> tìm phân biệt hoa thường
- grep -r <từ khóa><tên file> tìm kiếm tất cả trong file
15 .du -sh
- du -sh <tên file> : Kiểm tra kích thước của file
- du -sh *: Liệt kê kích thước tất cả các file trong thư mục
- find <thư mục để tìm> -name<tên file cần tìm> : Tìm file ở trong thư mục
- thêm -iname để tìm file không phân biệt hoa thường.
- tar -cvf <tên file nén> <file1 <dấu cách> file2> : nén file
- tar -tvf <tên file nén.tar> : xem file nén
- tar -xvf <tên file nén.tar> : giải nén file tar
- gzip <tên file> để nén file
- gzip -d <tên file> : để giải nén file
- unzip<tên file cần giải nén.zip> để giải nén file zip
- unzip -l <tên file cần giải nén.zip> để xem file zip mà không cần giải nén
- zip <tên thư mục nén> <file1 <dấu cách> file2> để nén một file
- zip <tên thư mục nén> <thư mục nén> để nén thư mục
- Tương tự gzip nhưng dung lượng lớn hơn
- whatis là tìm trang hướng dẫn với từ khóa đưa ra.
- Còn apropos liệt kê các trang hướng dẫn có chứa từ khóa cần tìm.
- Liệt kê các đường dẫn mà câu lệnh thực hiện.
- which ls
- print newline, word, and byte counts for each file
- Đưa ra phần đầu của file
- Tắt máy
3. Thực hành
Bài 1:
Hãy sử dụng những lệnh đã biết ở bài 2 để tạo cấu trúc thư mục sau bằng số lệnh ít nhất có thể, số lần gõ bàn phím ít nhất có thể:
Bài làm:
mkdir lab
cd lab
mkdir data project
cd data
cp /etc/passwd file1.txt
cp /etc/passwd file2.txt
Bài 2:
Xóa, di chuyển, sao chép file và thư mục
Hãy sao chép thư mục /lab ở bài 3 thành thư mục /backup (lưu ý thư mục /backup chưa tồn tại) sau đó tạo thêm hai file có nội dung giống như hai file trước có tên là /lab/project/more1.txt và /lab/data/more2.txt . Lại sao chép thư mục /lab ở trên thành thư mục /backup (lưu ý lúc này đã có thư mục này) với yêu cầu là không phải trả lời các câu hỏi có ghi đè không mà ghi đè trực tiếp không hỏi, sau đó xóa thư mục /lab
Bài làm
cp -r /lab /backup
cd /backup/project
cp /etc/passwd more1.txt
cd /backup/data
cp /etc/passwd more2.txt
cp -r /lab/* /backup
rm /lab
Bài 3:
Tập hợp, nén, giải nén thư mục
Tạo file /root/backup.tar.bz2 là bản backup dạng nén của thư mục backup trong bài 4. Sau đó giải nén file này thành thư mục /lab với cấu trúc thư mục như /backup .
Bài làm
yum install bzip2
tar backup.tar backup && bzip2 backup.tar
Bài 1:
Hãy sử dụng những lệnh đã biết ở bài 2 để tạo cấu trúc thư mục sau bằng số lệnh ít nhất có thể, số lần gõ bàn phím ít nhất có thể:
/-
|-/lab
|-/data
| |- file1.txt
| |- file2.txt
|-/project
Lưu ý: Các file được tạo có nội dung được chép từ file /etc/passwd .
Bài làm:
mkdir lab
cd lab
mkdir data project
cd data
cp /etc/passwd file1.txt
cp /etc/passwd file2.txt
Bài 2:
Xóa, di chuyển, sao chép file và thư mục
Hãy sao chép thư mục /lab ở bài 3 thành thư mục /backup (lưu ý thư mục /backup chưa tồn tại) sau đó tạo thêm hai file có nội dung giống như hai file trước có tên là /lab/project/more1.txt và /lab/data/more2.txt . Lại sao chép thư mục /lab ở trên thành thư mục /backup (lưu ý lúc này đã có thư mục này) với yêu cầu là không phải trả lời các câu hỏi có ghi đè không mà ghi đè trực tiếp không hỏi, sau đó xóa thư mục /lab
Bài làm
cp -r /lab /backup
cd /backup/project
cp /etc/passwd more1.txt
cd /backup/data
cp /etc/passwd more2.txt
cp -r /lab/* /backup
rm /lab
Bài 3:
Tập hợp, nén, giải nén thư mục
Tạo file /root/backup.tar.bz2 là bản backup dạng nén của thư mục backup trong bài 4. Sau đó giải nén file này thành thư mục /lab với cấu trúc thư mục như /backup .
Bài làm
yum install bzip2
tar backup.tar backup && bzip2 backup.tar
mkdir lab
tar -cvf backup.tar -C /lab
Bài 4:
Lọc dữ liệu dạng đơn giản
Sử dụng lệnh ls để liệt kê tất cả các file/thư mục trong hệ thống file tính từ thư mục gốc “/” sau đó dùng lệnh grep để lọc ra tất cả các file có phần đuôi là “.txt”
Cũng yêu cầu trên, làm lại nhưng lọc kết quả là các file có phần đầu là “dat”.
Bài làm
ls / | grep .txt
ls / | grep data*
Nhận xét
Đăng nhận xét