[Linux] Cơ bản về dòng lệnh Linux

Gửi bài trả lời

Mã xác nhận
Nhập vào đoạn mã xác nhận mà bạn thực sự nhìn thấy trong hình. Tất cả chữ cái đều được phân biệt với chữ số và không có số O.

Nếu bạn muốn đính kèm một hay nhiều tập tin trong bài viết, hãy sử dụng công cụ bên dưới.

Kích thước tệp tối đa cho mỗi tệp đính kèm: 1 MiB.

Xem toàn bộ Xem lại chủ đề: [Linux] Cơ bản về dòng lệnh Linux

[Linux] Cơ bản về dòng lệnh Linux

Viết bởi Nguyễn Đình Hoàng » Ba T11 10, 2009 9:52 pm

Sau khi bạn đăng nhập, các lệnh 'ls' (dùng để xem nội dung một thư mục) và 'cd' (thay đổi thư mục) sẽ rất có ích. Nhưng phải làm gì nếu bạn cần trợ giúp. Lệnh yêu cầu trợ giúp trong Linux là 'man' (viết tắt từ chữ manual). Phần lớn các lệnh trong Linux đều có một trang hướng dẫn sử dụng tương ứng. Những lệnh này được xác định trong một biến môi trường (giống như biến của DOS) - trong trường hợp này được gọi là $MANPATH (lưu ý rằng Linux phân biệt chữ thường và chữ hoa). Khi bạn cần có hướng dẫn về một lệnh nào đó, chẳng hạn như lệnh 'ls', hãy gõ:

man ls

tại dòng lệnh của Linux

Để nắm bắt được vấn đề, nhấn phím spacebar khi xuất hiện dòng chữ -more- tại cuối màn hình.

Bạn cũng có thể xem hướng dẫn bằng cách tham khảo nội dung trong thư mục /usr/doc.

Thoát khỏi Linux

Chỉ người dùng là root mới có thể thoát khỏi (shut down) Linux. Giống như Windows, bạn không được tắt máy tính để thoát khỏi hệ điều hành (HĐH) bởi làm như vậy bạn sẽ bị mất dữ liệu nằm trong bộ nhớ nhưng chưa được ghi lên đĩa cứng, và có thể gây hư hại các tập tin hệ thống. Những người dùng, kể cả bạn, đang truy cập tới máy này để lấy dữ liệu (chẳng hạn như thông qua mạng) sẽ bị ngắt khỏi kết nối. Đáng ngạc nhiên là quá trình shutdown và tuỳ chọn restart trong Linux dễ dàng và nhanh hơn Windows.

Bạn thực hiện shutdown Linux bằng lệnh 'halt' hay 'shutdown' và khởi động lại bằng lệnh 'reboot'. Nhưng nhớ chỉ làm như vậy khi bạn là người dùng hệ thống đơn. Sau này chúng ta sẽ bàn tới trách nhiệm của người quản trị hệ thống khi thực hiện shutdown máy.

Làm việc với tập tin và thư mục

Các lệnh này rất giống lệnh tương ứng trong DOS bởi thực chất, DOS lặp lại ý tưởng của Unix. Tuy nhiên, sự khác biệt cơ bản là bạn phải gõ:

mkdir

thay vì chỉ đơn thuần 'md'. Tương tự, lệnh để xóa thư mục là 'rmdir'.

Lệnh xóa tập tin trong Unix được xác định rất rõ ràng và không thể đảo ngược lại được. Nhưng điều này không hẳn như vậy trong Linux, bởi phần lớn các nhà cung cấp Linux đều sử dụng dấu phòng hộ (life-saving alias - có nghĩa là đánh dấu những tập tin bị xóa, chỉ khi người dùng ra lệnh xóa hẳn thì HĐH mới thực sự xóa). Linux sẽ hỏi là bạn có chắc chắn muốn xóa tập tin hay không trước khi loại bỏ hẳn nó. Một khi đã xóa, Linux không cung cấp khả năng hồi phục lại, tập tin mất hoàn toàn.

Nếu cần copy tập tin, bạn gõ:

cp

Các hệ Unix truyền thống sẽ ghi đè lên tập tin hiện hữu cùng tên mà không hỏi lại, nhưng Linux lại đưa ra tham số 'cp -i' để yêu cầu bạn xác nhận lại tác vụ trước khi thực hiện ghi đè.

Lệnh chuyển (move) và đổi tên (rename) tập tin là mv. Bạn có thể chuyển một tập tin sang thư mục khác, đồng thời đổi tên tập tin đó, gõ:

mv

Bạn cũng có thể biết được máy tính của mình hoạt động như thế nào bằng cách gõ lệnh 'ps' tại dấu nhắc hệ thống. Thao tác này cho bạn biết những gì đang chạy trên máy của bạn.

Khi muốn biết có bao nhiêu khoảng trống còn lại trên đĩa cứng, bạn gõ 'df'. Lệnh 'du' báo cho bạn biết kích thước chiếm dụng bởi các tập tin trong thư mục hiện hành.

Để hiển thị nội dung một tập tin, bạn gõ:

cat

Nhưng nếu tập tin quá lớn, bạn phải thay bằng lệnh:

more

Và bạn sẽ đọc nội dung tập tin theo từng trang, nhấn phím spacebar để xem trang tiếp.

Sử dụng Midnight Commander

Một khi đã vào hệ thống, bạn có thể muốn biết có những tập tin nào trong thư mục của mình. Thông thường, bạn sẽ dùng lệnh 'ls'.

Trước khi học thêm các lệnh khác, bạn nên biết một chương trình nhỏ rất hữu dụng được gọi là Midnight Commander. Đây là một tiện ích giống như Norton Commander được dùng phổ biến trong DOS. Chương trình rất dễ sử dụng. Nó được cài ở hầu hết các máy chạy Linux. Bạn gõ 'mc' để khởi động Midnight Commander và sẽ nhìn thấy một màn hình tương tự NC. Trong kỳ tiếp, chúng ta sẽ cùng tìm hiểu về chương trình này.


Nhìn "bề nổi" thì cấu trúc và cách tổ chức file của Linux cũng không khác DOS/Windows và các Hệ điều hành khác là mấy. Chỉ có một điểm khác biệt lớn mà bạn cần phải chú ý là cấu trúc thư mục của Linux KHÔNG phân chia thành các ổ đĩa ....

Làm quen với cấu trúc file của Linux

Nhìn "bề nổi" thì cấu trúc và cách tổ chức file của Linux cũng không khác DOS/Windows và các Hệ điều hành khác là mấy. Chỉ có một điểm khác biệt lớn mà bạn cần phải chú ý là cấu trúc thư mục của Linux KHÔNG phân chia thành các ổ đĩa. Cho dù bạn có bao nhiêu ổ đĩa thì tất cả đều bắt đầu từ một thư mục gốc có tên là /. Sau đó là đi vào các thư mục con, mỗi ổ đĩa của bạn sẽ được "map" (ánh xạ) vào một thư mục con riêng biệt (thư mục nào thì còn tuỳ vào phiên bản của Linux và cũng tuỳ bạn qui định).

Thêm 3 điểm khác biệt nhỏ nữa mà bạn cần phải để ý là:
- trong đường dẫn của Linux, các thư mục được phân cách nhan bằng ký hiệu / (trong khi với DOS/Windows là ký hiệu \);
- và các tham số của lệnh trong Linux được bắt đầu bằng dấu trừ (-) (VD: ls -l) trong khi với DOS/Windows là ký hiệu / (VD: dir /a); các tham số của Linux có thể được dùng kết hợp với nhau (VD: ls -al, ls -ls...)
- cuối cùng, Linux khác với Windows ở chỗ Linux phân biệt chữ hoa và chữ thường, trong Linux abc và Abc là khác nhau.

Một số phím/tổ hợp phím bạn cần biết

Ctrl-C: bạn hãy nhớ kỹ tổ hợp phím này. Trong trường hợp bạn cảm thấy "có cái gì đó bất ổn" xảy ra, hay là chương trình bạn chạy không chịu dừng thì bạn hãy thử nhấn tổ hợp phím này. 99% chương trình của Linux chạy trên chế độ text đều có thể được/bị kết thúc bằng tổ hợp phím này.

Ctrl-Alt-Del: tương tự như trong DOS. Tổ hợp phím này sẽ khởi động lại máy tính.

Ctrl-D: khi một chương trình yêu cầu bạn nhập dữ liệu từ bàn phím, bạn có thể nhấn tổ hợp phín này để báo cho chương trình biết là quá trình nhập dữ liệu đã kết thúc. Tổ hợp phím này sẽ gởi tín hiệu EOF (End Of File) đến chương trình.. Nếu nhấn Ctrl-D mà không thấy "xi nhê", bạn thử gõ vào EOF (ba chữ cái E, O và F) rồi nhấn Enter (phím Enter).

ESC: đây là phím Esc ở góc trái, phía trên của bàn phìm, trước khi nhấn Ctrl-C để kết thúc chương trình, bạn hãy thử nhấn ESC trước xem sao.

ENTER: đây là phím Enter trên bàn phím, chắc là tôi khỏi phải giới thiệu về chức năng của phím này nữa chứ nhỉ?

Một số lệnh căn bản của Linux

Các lệnh được trình bày sau đây tôi sẽ cố gắng so sánh nó với một lệnh tương tự trong DOS để nếu như bạn đã biết qua các lệnh của DOS rồi thì sẽ dễ hiểu hơn. Còn nếu bạn chưa từng biết qua các lệnh của DOS? Cũng không sao, bạn sẽ biết được thêm cùng 1 lúc các lệnh của Linux và DOS. Chú ý, đây là các lệnh trong chế độ text và được gõ từ bàn phím. Các lệnh phải được gõ chính xác (vì Linux phân biệt giữ chữ hoa và chữ thường!). Và dĩ nhiên là sau khi gõ xong một lệnh thì bạn đừng quên nhấn Enter để Linux bắt đầu thực hiện lệnh đó! :-) Lưu ý thêm là những gì tôi ghi giữa 2 ngoặc nhọn (< và >) là bắt buộc phải có, giữa hai ngoặc vuông ([ và ]) là tuỳ chọn (không bắt buộc).


đây có lẽ là lệnh mà bạn cần phải nhớ kỹ (đừng bao giờ quên!). Lệnh này tương tự như lệnh Help trong DOS. man sẽ hiển thị các thông tin chi tiết về cộng dụng, cách dùng và cú pháp của một lệnh khác (dĩ nhiên là các thông tin đều bằng tiếng Anh).
Cú pháp: man
Ví dụ: man ls

Và bạn hoàn toàn có thể gõ man man để hiển thị các thông tin giúp đỡ về chính lệnh man!

Lưu ý: để thoát (kết thúc) lệnh man, bạn hãy gõ vào ký tự hai chấm ( sau đó gõ tiếp ký tự q. Nếu không thành công, bạn hãy nhấn phím ESC và thử lại lần nữa. Bạn cũng có thể nhấn Ctrl-C để thoát khỏi man.


--------------------------------------------------------------------------------

ls lệnh này tương tự như lệnh dir trong DOS. ls sẽ liệt kê danh sách tất cả các file và thư mục nằm trong một thư mục mà bạn chỉ định.
Cú pháp chung: ls [tham_số] [thư_mục]
Nếu như bạn cung cấp phần thư_mục thì ls sẽ liệt kê các file trong thư mục hiện tại.
Ví dụ:
ls
ls -a
ls -al /usr

Một số tham số của ls như sau:

-a: liệt kê tất cả các file, kể cả file ẩn, là những file mà tên bắt đầu bằng dấu chấm (.)
-A: liệt kê tất cả các file, kể cả file ẩn, nhưng không liệt kê . và .., đây tên của thư mục hiện tại và thư mục cha trong Linux.
-l: liệt kê chi tiết về file (bao gồm các thông tin như thời gian tạo, kích thước, thuộc tính...).

Bạn hãy tự mình tìm hiểu thêm về các tham số khác của ls nhé! (dùng man ls). Và đừng quên dùng man cho các lệnh tiếp theo.


--------------------------------------------------------------------------------

cd lệnh này tương tự như lệnh cd trong DOS. Dùng để chuyển tới một thư mục khác.
Cú pháp: cd [tên_thư_mục]
Ví dụ: cd /home

Nếu bạn không cung cấp tên_thư_mục thì cd sẽ đưa bạn về thư mục "tổ ấm" (home directory) của bạn. Trong Linux, mỗi người sử dụng đều có một home directory. Nếu username của bạn là nbthanh thì home directory của bạn sẽ là /usr/nbthanh. Riêng account root sẽ có home directory là /root.


--------------------------------------------------------------------------------

pwd lệnh này tương tự như lênh cd (không có tham số) trong DOS. Lệnh này sẽ hiển thị lên màn hình cho bạn biết là bạn hiện đang ở thư mục nào.
Cú pháp: pwd


--------------------------------------------------------------------------------

mkdir tương tự như lệnh md của DOS. Lệnh này dùng để tạo một thư mục mới.
Cú pháp: mkdir
Ví dụ:
mkdir mydir
mkdir /tmp/mydir2


--------------------------------------------------------------------------------

rmdir tương tự như lệnh rm trong DOS, dùng để xoá một thư mục.
Cú pháp: rmdir
Ví dụ:
rmdir mydir
rmdir /tmp/mydir2
rmdir /tmp/*

Lưu ý: bạn chỉ có thể xoá được thư mục nếu như nó rỗng, nghĩa là nó không chứa một file hoặc thư mục con nào nữa (ngoài . và ..).


--------------------------------------------------------------------------------

cp tương tự như lệnh copy của DOS, dùng để chép file hoặc thư mục từ nơi này đến nơi khác.
Cú pháp: cp [tham_số]
Ví dụ:
cp /tmp/myfile.txt myfile.text
cp /home/*.cgi ./
cp -r /usr/nbthanh1 /usr/nbthanh2

Mặc định thì cp chỉ chép các file, nếu bạn thêm tham số -r thì cp sẽ chép luôn các thư mục.


--------------------------------------------------------------------------------

rm tương tự như lệnh del trong DOS, lệnh này dùng để xoá file.
Cú pháp: rm
Ví dụ:
rm myfile.txt
rm /usr/nbthanh/nbtfile.txt
rm /tmp/*


--------------------------------------------------------------------------------

mv tương tự như lênh move (ngoại trú) của DOS. Lệnh này sẽ di chuyển/đổi tên file từ nơi này đến nơi khác.
Cú pháp: mv
Ví dụ về di chuyển:
mv /tmp/myfile.txt /usr/nbthanh
mv myfolder /tmp
mv /usr/* /tmp
Ví dụ về đổi tên, vừa di chuyển vừa đổi tên:
mv myfile1.txt myfile2.txt
mv /usr/oldfoler ./newfolder


--------------------------------------------------------------------------------

cat tương tự như lệnh type của DOS. Lệnh này dùng để hiển thị nội dung của 1 file lên màn hình.
Cú pháp: cat
Ví dụ:
cat myfile.txt
cat /tmp/temp.text

From: http://thegioimang.org/