Nếu bạn chưa từng làm việc với hệ điều hành Linux hoặc chưa tương tác với các máy chủ sử dụng hệ điều hành dựa trên nền tảng Linux thì có lẽ việc sử dụng các dòng lệnh SSH trong Terminal là một công việc không hề đơn giản. Tuy nhiên, nếu bạn sử dụng chúng thường xuyên, lặp đi lặp lại thì câu chuyện của bạn sẽ khác. Những dòng lệnh có thể sẽ không trực quan, không đẹp đẽ như khi bạn sử dụng giao diện người dùng Window nhưng khả năng của chúng thì tuyệt vời.
Hãy tập làm quen với những dòng lệnh này vì sẽ có thể bạn sẽ sử dụng chúng sau này khá nhiều và nhớ bookmark lại bài này, đọc lại thường xuyên, thường xuyên thực hành.
Phụ mục
Thao tác trên tập tin và thư mục trong hệ thống:
Một số dòng lệch hữu ích giúp thao tác trên tập tin và thư mục trong Terminal.
ls: liệt kê tất cả các tập tin có thể nhìn thấy trong thư mục hiện hành.
– ls .*
Câu lệnh trên giúp bạn liệt kê tất cả các tập tin bao gồm cả tập tin ẩn bắt đầu bằng “.” như .bashrc, nếu “.” được thay bằng kí tự “a” bất kì, khi đó chỉ liệt kê các tập tin bắt đầu bằng kí tự “a”.
– ls */*
Liệt kê tất cả các tập tin trong thư mục con đầu tiên.
– ls path/
liệt kê tất cả các tập tin trong thư mục mà đường dẫn (path) chỉ tới.
– ls -ltrh
liệt kê tập tin với các thông số (l), nếu có (t) các tệp tin sắp xếp theo thứ tự ngày chỉnh sửa, nếu có (r) thứ tự các tập tin sẽ được đảo ngược, nếu có (h) các tập tin được liệt kê với dung lượng theo đơn vị (GB/MB/KB).
cd: Thay đổi thư mục.
– cd ~/
di chuyển tới thư mục “home”.
– cd –
quay về thư mục trước đó.
– cd ../
di chuyển tới thư mục trên (thư mục bao gồm thư mục hiện hành).
– cd path/
di chuyển tới thư mục mà đường dẫn (path) chỉ tới.
mkdir: Tạo thư mục mới.
pwd: Xem đường dẫn của thư mục hiện hành.
ln: Tạo liên kết mới cho thư mục.
Giả sử bạn có một đường dẫn dài để chỉ tới thư mục “intel” như sau: /usr/local/source/file/compiler/bin/intel/, bạn muốn tạo một đường dẫn ngắn gọn hơn để dễ thao tác trong như mục hiện hành. Dòng lệnh thực hiện như sau: ln -s /usr/local/source/file/compiler/bin/intel/ abc. Khi đó bạn đã tạo ra một thư mục con abc/ trong thư mục hiện hành mà liên kết với thư mục intel. Khi đó đường dẫn abc/ là tương đương với đường dẫn /usr/local/source/file/compiler/bin/intel/. Muốn xóa đường dẫn này đi bạn sử dụng lệnh rm (bên dưới).
df: Xem dung lượng thư mục và file.
– df -sh
xem dung lượng của thư mục hiện hành.
– df -ah
xem dung lượng của tất cả các file và thư mục con trong thư mục hiện hành.
– df -h –max-depth=1
xem dung lượng của tất cả các thư mục con trong thư mục hiện hành.
cp/mv: Sao chép hoặc di chuyển tệp tin từ nơi này đến nơi khác.
– cp a1.txt path/ hoặc mv a1.txt path/
sao chép hoặc di chuyển tập tin a1.txt tới thư mục đường dẫn chỉ tới.
– cp -i a1.txt a2.txt hoặc mv -i a1.txt a2.txt
nếu có (i), khi đó nếu tập tin a2.txt tồn tại, nó sẽ hỏi bạn có ghi đè lên không.
– cp -f a1.txt a2.txt hoặc mv -f a1.txt a2.txt
ghi đè ngay cả tập tin a2.txt tồn tại.
– cp -r path1/ path2/ hoặc mv -r path1/ path2/
sao chép hoặc di chuyển tất cả các tập tin trong thư mục 1 tới tới thư mục 2.
rm: Xóa tệp tin hoặc thư mục.
– rm -i a1.txt
nếu có (i), sẽ hỏi có xóa hay không.
– rm -f path/
xóa toàn bộ thư mục (hãy chắc chắn rằng bạn tất cả các tập tin trong thu mục bạn muốn xóa).
rm -f `find path/ -name “a”`
xóa toàn bộ file có tên là a được tìm thấy trong thư mục bạn chọn.
vi/nano: Chỉnh sửa hoặc xem tập tin.
– nano a1.txt hoặc vi a1.txt
(nano) được sử dụng khi cần chỉnh sửa nhanh chóng và đơn giản. Trong khi đó (vi) có nhiểu câu lệnh cho các chỉnh sửa phức tạp hơn. Tham khảo thêm về vi và nano.
tail: Hiển thị phần cuối cùng của tập tin.
– tail a1.txt
chmod: Thay đổi quyền thao tác tập tin.
u: người đang dùng r: đọc
g: nhóm w: viết
o: người dùng khác x: thực thi (execute permission)
a: cho tất cả người dùng
– chmod u+x a1.txt hoặc chmod u-rx a1.txt
file a1.txt thành file thực thi hoặc loại bỏ quyền đọc và thực thi của file a1.txt đối với người dùng.
– chmod a+x a1.txt hoặc chmod +x a1.txt
hai lệnh này là tương đương, cho phép file a1.txt được thực thi với tất cả người dùng
locate: Kiểm tra cơ sở dự liệu trong thư mục hiện hành.
– locate ABC
tìm kiếm và xem tất cả các đường dẫn và tập tin có tên bao gồm cụm từ đại diện “ABC”.
tar: Nén và giải nén tập tin.
– tar zxvf a1.tgz
giải nén tập tin a1.tgz.
– tar cvzf a1.tgz a1.txt
nén tập tin a1.txt thành tập tin a1.tgz.
Thao tác với kết nối:
Một số lệnh hữu ích trong việc kết nối giữa các máy khác nhau hoặc giữa máy trạm với máy chủ.
ssh: Đăng nhập vào máy chủ từ máy trạm.
– ssh iccms@192.168.1.1
đăng nhập vào máy chủ có IP là 192.168.1.1, chú ý là bạn có thể sử dụng bí danh trong .bashrc bằng lệnh sau: alias abc=”ssh iccms@192.168.1.1″. Sử dụng bí danh sẽ giúp rút gọn lệnh phải sử dụng thường xuyên.
scp: Sao chép tập tin từ máy chủ xuống máy trạm.
– scp iccms@192.168.1.1:/path1/a1.txt path2/
sao chép tập tin a1.txt trong thư mục 1 từ máy chủ xuống thư mục 2 trong máy trạm.
wget: Tải tập tin từ trang web.
– wget http://www.example.com/file.zip
tải tập tin file.zip từ trang web example.com
3. Thao tác với hệ thống:
top/ps: Liệt kê các chương trình đang thực thi.
kill/killall: Tắt một chương trình đang thực thi.
– kill -9 hoặc killall
Tắt một chương trình với ưu tiên cao nhất.
lscpu: Xem thông tin về CPU của máy.
watch -n 1 free -m: Kiểm tra dung lượng RAM, để thoát khỏi lệch watch sử dụng phím tắt Ctrl+C.
sudo sysctl -w vm.drop_caches=3: Xoá bộ nhớ đệm sử dụng trong RAM.
4. Phân tích dữ liệu với dòng lệnh:
Đây là những lệnh rất hữu ích khi bạn muốn phân tích dữ liệu ngay trên Terminal.
clear: Làm sạch của sổ terminal.
grep: Tìm kiếm trong tập tin.
– grep abc a1.txt
liệt kê các dòng có chứa các kí tự đại diện “abc” trong tập tin a1.txt.
– grep -l abc *.*
liệt kê các tập tin có chứa các kí tự đại diện “abc” trong thư mục hiện hành.
tail: Xem phần cuối cùng của tập tin.
– tail -50 a1.txt
liệt kê 50 dòng tính từ cuối lên trong tập tin a1.txt.
cat: Xem toàn bộ nội dung tập tin.
– cat a1.txt
hiện thị toàn bộ nội dung của tập tin a1.txt trong terminal.
– cat a1.txt >> a2.txt
bổ sung toàn bộ nội dung của tập tin a1.txt vào sau tập tin a2.txt.
– cat a1.txt a2.txt > a.txt
ghép nội dung của tập tin a1.txt và a2.txt thành tập tin a.txt.
– cat a1.txt | sort
hiện thị nội dung trong tập tin a1.txt theo thứ tự bảng chữ cái.
– cat a1.txt | wc
hiện thị lần lượt số dòng, số từ và số kí tự trong tập tin a1.txt.
bc: Tính toán đơn giản trên terminal.
– echo 0.72*1.54 | bc -l
sẽ cho bạn kết quả bằng 1.1088 trên terminal.
– echo “scale=2; 0.72*1.54” | bc
sẽ cho bạn kết quả bằng 1.10 trên terminal.
5. Tạo biến môi trường trong Linux.
Để tạo các biến môi trường để thuận tiện trong quá trình sử dụng bạn làm như sau:
– nano .bashrc
– export PATH=”$PATH:/path/”
– export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/path/”
– alias cd..=’cd ../’
– source ~/.bashrc
Tôi đăng bài này để lưu trữ sử dụng cho chính tôi khi cần thiết và chia sẻ cùng bạn đọc NhanWeb để các bạn cùng lưu trữ. Nhớ bookmark để dành và sử dụng khi bạn cần nhé !
Nguồn: Blog nguyentuanhung.wordpress.com