Thứ Sáu, 27 tháng 12, 2019

7 chủ đề làm việc với file, thư mục trong Linux

1. Tạo và chỉnh sửa các file

Các hệ thống Linux cung cấp các lệnh để tạo các file. Người dùng có thể chọn trình soạn thảo văn bản mong muốn. Một số lệnh yêu cầu người dùng phải thành thạo trước khi sử dụng, còn những lệnh khác thì khá đơn giản.
LệnhChức năngVí dụ
nanoMột trình chỉnh sửa văn bản dễ sử dụng, yêu cầu người dùng di chuyển trong file bằng các phím mũi tên và cung cấp các chuỗi điều khiển để định vị văn bản, lưu các thay đổi, v.v.nano myfile
viMột trình chỉnh sửa tinh vi hơn, cho phép người dùng nhập các lệnh để tìm và thay đổi văn bản, thực hiện các thay đổi tổng thể, v.v...vi myfile
exMột trình soạn thảo văn bản được thiết kế cho các lập trình viên và có cả chế độ trực quan và dòng lệnh.ex myfile
touchTạo một file nếu nó chưa tồn tại hoặc cập nhật timestamp nếu nó đã được tạo.touch newfile
touch updatedfile
>Tạo file bằng cách hướng đầu ra cho chúng. > tạo một file trong khi >> gắn với một file hiện có.cal > calendar
ps > myprocs
date >> date.log


2. Đọc một số file

Thông thường bạn phải xem xét nội dung của nhiều file khác nhau. Việc rà soát các file khác nhau thường xuyên thường khá phức tạp và tốn nhiều thời gian. Do đó cách đơn giản nhất để đọc nội dung của chúng là sử dụng câu lệnh cat. Cú pháp câu lệnh khá đơn giản:
cat FILE 
Chỉ cần thay đổi FILE bằng tên file bạn muốn đọc. Kết quả bạn sẽ nhìn thấy nội dung của file xuất hiện ở cuối Terminal.
Ví dụ như:
cat script.sh
Lệnh đọc file trên Linux
Ngoài ra bạn có thể sử dụng lệnh cat cho nhiều file cùng một lúc:
cat FILE-1 FILE-2
Đầu ra của lệnh sẽ hiện thị nội dung các file theo thứ tự nội dung của FILE - 1 rồi đến nội dung FILE -2.
Ngoài ra, Linux cung cấp một số lệnh để xem xét nội dung và bản chất của các file. Sau đây là một số lệnh hữu ích nhất.
LệnhChức năngVí dụ
catHiển thị toàn bộ nội dung của một file văn bản.cat .bashrc
moreHiển thị nội dung của file văn bản. Nhấn phím cách để di chuyển đến từng đoạn bổ sung.more .bash_history
lessHiển thị nội dung của file văn bản, nhưng cho phép quay trở lại bằng phím mũi tên lên trên.less .bash_history
fileXác định các file theo loại (ví dụ: văn bản ASCII, file thực thi, hình ảnh, thư mục)file myfile
file ~/.bashrc
file /bin/echo

3. Sao chép hoặc di chuyển file

Việc sao chép hoặc di chuyển file trong Linux terminal khá đơn giản và dễ dàng.
  • Để sao chép một file, bạn có thể sử dụng lệnh: cp.
  • Để di chuyển 1 file bạn sử dụng câu lệnh: mvoflder.
Cả 2 lệnh sử dụng khá đơn giản. Với lệnh cp. Để sao chép một file, bạn nhập tên file và nhập tên file copy mới. Ví dụ:
cp file1 file2
Trên câu lệnh trên sao chép file1 và tạo ra file2 có chứa nội dụng file1. Bạn có thể sử dụng cp để sao chép thư mục. Điều quan trọng cần lưu ý khi muốn sao chép một thư mục bạn nên sử dụng tùy chọn -r.
Nói cách khác, cp -r sẽ sao chép nội dung của một thư mục nhất định (và các thư mục con) sang thư mục bạn lựa chọn. Ngoài ra bạn có thể sử dụng cp với đường dẫn đầy đủ:
cp -r /home/marin/work/ /home/marin/backup
Câu lệnh trên sẽ sao chép nội dung của thư mục "work" sang thư mục mới có tên "backup".
Nếu muốn sao chép tất cả các file và thư mục của một thư mục sang một thư mục khác, bạn có thể sử dụng ký tự "*". Ký tự được sử dụng để tìm các cổng phù hợp (trường hợp này là các file và thư mục). Ví dụ:
cp /home/marin/work/* /home/marin/backup/
Tiếp theo là lệnh mv. Cú pháp câu lệnh:
mv file1 file2
Câu lệnh trên đổi tiên file1 thành file2. Tương tự với thư mục cũng thế. Tuy nhiên nếu bạn chỉ định 1 file và 1 thư mục, file sẽ được di chuyển vào trong thư mục. Chẳng hạn:
mv /home/marin/file1 /home/marin/work/
Trong câu lệnh trên sẽ di chuyển file1 từ “/home/marin/” sang “/home/marin/work/”. Nếu bạn muốn di chuyển tất cả các file trong một thư mục sang thư mục khác, bạn có thể sử dụng ký tự "*":
mv /home/marin/work/* /home/marin/backup/

4. Xóa các file và thư mục

Nếu muốn xóa một thư mục hoặc một file bạn có thể sử dụng lệnh rm. Điều quan trọng bạn cần lưu ý là khi sử dụng lệnh này để xóa một file hoặc thư mục, các file này không thể restore được. Để xóa 1 file bạn thực hiện:
rm /home/marin/useless-file.txt
Bạn có thể sử dụng rm với nhiều tùy chọn khác nhau. Một số tùy chọn quan trọng như:
  • -f: buộc xóa các file có thông báo nhắc nhở
  • -i: nhắc nhở trước khi xóa
  • -r: xóa bỏ các thư mục đệ quy
  • -d: xóa các thư mục rỗng
  • -v: giải thích đang thực hiện nhiệm vụ gì

5. Tìm file

Có hai lệnh có thể giúp người dùng tìm file trên Linux, nhưng chúng hoạt động rất khác nhau. Một lệnh tìm kiếm hệ thống file, còn lệnh kia xem xét cơ sở dữ liệu được xây dựng trước đó.
Lệnh
Chức năng
Ví dụ
findĐịnh vị các file dựa trên các tiêu chí được cung cấp (tên, loại, chủ sở hữu, quyền, kích thước file, v.v...). Trừ khi được cung cấp một vị trí để bắt đầu tìm kiếm, còn nếu không lệnh này chỉ tìm trong thư mục hiện hành.find . -name myfile
find /tmp -type d
locateĐịnh vị các file bằng cách sử dụng nội dung của /var/lib/mlocate/mlocate.db được cập nhật bằng lệnh updateb chạy qua cron. Không yêu cầu vị trí bắt đầu.locate somefile
locate "*.html" -n 20
Lưu ý: Chi tiết về lệnh find có trong phần bên dưới.

6. Liệt kê nội dung thư mục

Để liệt kê danh sách các thư mục, bạn có thể sử dụng lệnh ls:
Lệnh Linux để liệt kê danh sách các thư mục
Lệnh "ls" có thể lấy các thông số khác nhau giúp bạn thay đổi đầu ra của câu lệnh. Ví dụ, với thông số "-a" sẽ hiển thị tất cả các file và thư mục, trong đó có cả thư mục ẩn có chứa "-a".
Lệnh ls giúp lấy thông số khác nhau
Nếu muốn đầu ra của câu lệnh hiển thị danh sách thông tin chi tiết từng file và thư mục, bạn có thể sử dụng tùy chọn “-l” (L):
ls -l You can try different 
Lệnh ls trên Linux
Ngoài ra bạn có thể kết hợp các thông số để hiển thị thông tin chi tiết tất cả các file:
ls al
Lệnh ls

7. Tìm kiếm lệnh Linux trước đó:

 Dấu Mũi tên

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master