Một đối tượng điển hình trong các hệ iều hành ó là file
! Tệp (file) là đơn vịlưu trữnhỏnhất trong hệ iều hành Unix/Linux
! File là một tập hợp dữliệu có tổchức được hệ iều hành quản lý
! Cách tổchức dữliệu trong file thuộc vềchủcủa nó là người ã tạo ra file
! File có thểlà:
! một vn bản (trường hợp đặc biệt là chương trình nguồn trên C, shell
script .)
! một chương trình ngôn ngữmáy,
! Hệ iều hành tổchức việc lưu trữnội dung file trên các thiết bịnhớlâu
dài và đảm bảo các thao tác lên file.
! Hệ iều hành đảm bảo các chức ng liên quan đến file nên người dùng
không cần biết file của mình lưu ởvùng nào trên Ⓞa từ, bằng từcách nào
đọc/ghi lên các vùng của Ⓞa từmà vẫn thực hiện được yêu cầu tìm
kiếm, xửlýlên các file
58 trang |
Chia sẻ: Mr Hưng | Lượt xem: 1000 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Hệ điều hành Unix-Linux - Chương 3: Hệ thống file, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
h thước của file.
n -r : chuyển đổi thứ tự sắp xếp hiện thời.
n Ví dụ:
n # sort -f vdsort
44
Xác định kiểu file
n Cú pháp lệnh file:
n file [tùy-chọn] [-f file] [-m ...] ...
n Xác định và in ra kiểu thông tin chứa trong file
n Lệnh file sẽ lần lượt kiểmtra từ kiểu file hệ thống, kiểu file magic (ví dụ file mô tả thiết bị) rồi đến kiểu file văn bản thông thường
n Nếu file được kiểmtra thỏa mãn một trong ba kiểu file trên thì kiểu file sẽ được in ra theo các
dạng cơ bản sau:
n text: dạng file văn bản thông thường, chỉ chứa các mã ký tự ASCII.
n executable: dạng file nhị phân khả thi.
n data: thường là dạng file chứa mã nhị phân và không thể in ra được.
n Một số tuỳ chọn:
n -b : cho phép chỉ đưa ra kiểu file mà không đưa kèmtheo tên file.
n -f tên-file : cho phép hiển thị kiểu của các file có tên trùng với nội dung trên mỗi dòng trong file
tên-file. Để kiểmtra trên thiết bị vào chuẩn, sử dụng dấu "-".
n -z : xemkiểu của file nén.
n Ví dụ:
n # file file.c file /dev/hda
n file.c: C program text
n file: ELF 32-bit LSB executable, Intel 80386,version 1,dynamically linked, not stripped
n /dev/hda: block special
45
Xem nội dung các file
n more [-dlfpcsu] [-số] [+/xâumẫu] [+dòng-số] [file ...]
n Các lựa chọn:
n -số : xác định số dòng nội dung của file được hiển thị (số).
n -d : trên màn hình sẽ hiển thị các thông báo giúp ng-ời dùng cách sử dụng đối với lệnh more,
ví như [ Press space to continue, "q" to quit .], hay hiển thị [Press
n "h" for instructions .] thay thế cho tiếng chuông cảnh báo khi bấm sai một phím.
n -l : more thường xem^L là một ký tự đặc biệt, nếu không có tùy chọn này, lệnh sẽ dừng tại
dòng đầu tiên có chứa ^L và hiển thị % nội dung đã xem được (^L không bị mất), nhấn
phímspace (hoặc enter) để tiếp tục. Nếu có tùy chọn -l, nội dung của file sẽ được hiển thị như
bình thường nhưng ở một khuôn dạng khác, tức là dấu ^L sẽ mất và trước dòng có chứa ^L
sẽ có thêmmột dòng trống.
n -p : không cuộn màn hình, thay vào đó là xóa những gì có trên màn hình và hiển thị tiếp nội
dung file.
n -c : không cuộn màn hình, thay vào đó xóa màn hình và hiển thị nội dung file bắt đầu từ đỉnh
màn hình
n -s : xóa bớt các dòng trống liền nhau trong nội dung file chỉ giữ lại một dòng
n -u : bỏ qua dấu gạch chân.
n +/xâumẫu : tùy chọn +/xâumẫu chỉ ra một chuỗi sẽ được tìm kiếm trước khi hiển thị mỗi file.
n +dòng-số : bắt đầu hiển thị từ dòng thứ dòng-số.
n Ví dụ:
n # more -d vdmore
46
Các phím trong more
47
Thêm số thứ tự của các dòng trong file
n nl [tùy-chọn]
n Các tuỳ chọn:
n -b, --body-numbering=STYLE : sử dụng kiểu STYLE cho việc đánh thứ tự các dòng trong nội
dung file. Có các kiểu STYLE sau:
n a : đánh số tất cả các dòng kể cả dòng trống;
n t : chỉ đánh số các dòng không trống;
n n : không đánh số dòng.
n -d, --section-delimiter=CC : sử dụng CC để đánh số trang logic (CC là hai ký tự xác định phạmvi
cho việc phân trang logic).
n -f, --footer-numbering=STYLE : sử dụng kiểu STYLE để đánh số các dòng trong nội dung file
(một câu có thể có hai dòng ...).
n -h, --header-numbering=STYLE : sử dụng kiểu STYLE để đánh số các dòng trong nội dung file.
n -i, --page-increment=số : đánh số thứ tự của dòng theo cấp số cộng có công sai là số.
n -l, --join-blank-lines=số :nhóm số dòng trống vào thành một dòng trống.
n -n, --number-format=khuôn : chèn số dòng theo khuôn (khuôn: ln - căn trái, không có số 0 ở
đầu; rn - căn phải, không có số 0 ở đầu; rz - căn phải và có số 0 ở đầu)
n -p, --no-renumber : không thiết lập lại số dòng tại mỗi trang logic.
n -s, --number-separator=xâu : thêmchuỗi xâu vào sau số thứ tự của dòng.
n -v, --first-page=số : số dòng đầu tiên trên mỗi trang logic.
n -w, --number-width=số : hiển thị số thứ tự của dòng trên cột thứ số.
n --help : hiển thị trang trợ giúp và thoát.
48
Xem qua nội dung file
n head [tùy-chọn] [file]...
n Đưa ra màn hình 10 dòng đầu tiên của mỗi file
n Nếu có nhiều hơn một file, thì lần lượt tên của file và 10 dòng nội dung đầu tiên sẽ được
hiển thị. Nếu không có tham số file, hoặc file là dấu "-", thì ngầm định sẽ đọc từ thiết bị vào
chuẩn.
n Các tuỳ chọn:
n -c, --bytes=cỡ : hiển thị cỡ (số nguyên) ký tự đầu tiên trong nội dung file (cỡ có thể nhận
n giá trị là b cho 512, k cho 1K, m cho 1 Meg)
n -n, --lines=n : hiển thị n (số nguyên) dòng thay cho 10 dòng ngầm định.
n -q, --quiet, --silent : không đ-a ra tên file ở dòng đầu.
n -v, --verbose : luôn đ-a ra tên file ở dòng đầu.
n --help : hiển thị trang trợ giúp và thoát.
n Ví dụ:
n # head -6 vdhead1 vdhead2
n ==> vdhead1 <==
n 1) New configuration mode
n 1-1) Directories
n Now, everything goes to ~/GNUstep/Library/AfterStep or
n ==> vdhead2 <==
n 1.7.164 patch 3
n $HOME/GNUstep/Library/AfterStep/start/Desktop/Theme/.include
n changed from shell script call to perl script call
49
Xem qua nội dung file
n tail [tùy-chọn] [file]...
n Đưa ra màn hình 10 dòng cuối trong nội dung của các file
n Nếu có nhiều hơn một file, thì lần lượt tên của file và 10 dòng cuối sẽ được hiển
thị
n Nếu không có tham số file, hoặc file là dấu "-" thì ngầm định sẽ đọc từ thiết bị
vào chuẩn.
n Các tùy chọn:
n --retry : cố gắng mởmột file khó truy nhập khi bắt đầu thực hiện lệnh tail.
n -c, --bytes=n : hiển thị n (số) ký tự sau cùng.
n -f, --follow[={name | descritptor}] : sau khi hiện nội dung file sẽ hiện thông tin về file: -f, --
follow, và --follow=descriptor là như nhau.
n -n, --lines=n : hiển thị n (số) dòng cuối cùng của file thay cho 10 dòng ngầm định.
n --max-unchanged-stats=n : hiển thị tài liệu về file (ngầm định n là 5).
n --max-consecutive-size-changes=n : hiển thị tài liệu về file (ngầm định n là 200).
n --pid=PID : kết hợp với tùy chọn -f, chấm dứt sau khi quá trình có chỉ số = PID lỗi.
n -q, --quiet, --silent : không đ-a ra tên file ở dòng đầu trong nội dung được hiển thị.
n -s, --sleep-interval=k : kết hợp với tùy chọn -f, dừng k giây giữa các hoạt động.
n -v, --verbose : luôn hiển thị tên của file.
n --help : hiển thị trang trợ giúp và thoát.
n Ví dụ:
n # tail -2 vdtail1 vdtail2
50
Tìm sự khác nhau giữa hai file
n diff [tuỳ-chọn]
n So sánh nội dung của hai file
n Nếu file1 là một thư mục còn file2 là một file bình thường, diff sẽ so sánh file có tên trùng với
file2 trong thư mục file1 với file2.
n Nếu cả file1 và file2 đều là thư mục, diff sẽ thực hiện sự so sánh lần lượt các file trong cả hai
thư mục theo thứ tự từ a-z (sự so sánh này sẽ không đệ qui nếu tuỳ chọn -r hoặc --recursive
không được đ-a ra). So sánh giữa hai thư mục không thể chính xác như khi so sánh hai file
n Các tuỳ chọn:
n -a: xem tất cả các file ở dạng văn bản và so sánh theo từng dòng.
n -b: bỏ qua sự thay đổi về số l-ợng của ký tự trống.
n -B: bỏ qua mọi sự thay đổi mà chỉ chèn hoặc xoá các dòng trống.
n --brief: chỉ thông báo khi có sự khác nhau mà không đ-a ra chi tiết nội dung khác
n nhau.
n -d: tìmra sự khác biệt nhỏ (tuỳ chọn này có thể làmchậm tốc độ làmviệc của lệnh
n diff).
n --exclude-from=file: khi so sánh thư mục, bỏ qua các file và các thư mục con có tên
n phù hợp với mẫu có trong file.
n -i: so sánh không biệt chữ hoa chữ thường.
n -r: thực hiện so sánh đệ qui trên thư mục.
n -s: thông báo khi hai file là giống nhau.
n -y: hiển thị hai file cạnh nhau để dễ phân biệt sự khác nhau.
51
Tìm theo nội dung file bằng lệnh grep
n Lọc đầu ra của một lệnh khác với cú pháp là
n | grep
n Tìm dòng chứa mẫu đã định trong file được chỉ ra.
n grep [tùy-chọn] [file]
n Lệnh grep hiển thị tất cả các dòng có chứa mẫu-lọc trong file được chỉ ra (hoặc từ thiết bị
vào chuẩn nếu không có file hoặc file có dạng là dấu "-")
n Các tùy chọn:
n -G, --basic-regexp : xemmẫu lọc như một biểu thức thông thường
n -E, --extended-regexp : xemmẫu lọc như một biểu thức mở rộng
n -F, --fixed-strings : xemmẫu như một danh sách các xâu cố định, được phân ra bởi
n các dòng mới. Ngoài lệnh grep còn có hai lệnh là egrep và fgrep. egrep tương
n tự như lệnh grep -E, fgrep tương tự với lệnh grep -F .
n -f file, --file=file : lấy các mẫu từ file, một mẫu trên một dòng. File trống chứa đựng
n các mẫu rỗng, và các dòng đưa ra cũng là các dòng trống.
n -H, --with-file : đ-a ra tên file trên mỗi dòng chứa mẫu tương ứng.
n -h, --no-filename : không hiển thị tên file kèmtheo dòng chứa mẫu trong trường hợp
n tìmnhiều file.
n -i : hiển thị các dòng chứa mẫu không phân biệt chữ hoa chữ thường.
n -l : đ-a ra tên các file trùng với mẫu lọc.
n -n, --line-number : thêm số thứ tự của dòng chứa mẫu trong file
52
Tìm theo nội dung file bằng lệnh grep
53
Tìm theo nội dung file bằng lệnh egrep
54
Tìm file theo đặc tính
n find [đường-dẫn] [biểu_thức]
n Tìm kiếm file trên cây thư mục theo biểu thức được đưa ra. Mặc định đường dẫn
là thư mục hiện thời, biểu thức là -print.
n -daystart : đo thời gian (-amin, -atime, -cmin, -ctime, -mmin, -mtime).
n -depth : thực hiện tìm kiếm từ nội dung bên trong thư mục trước (mặc định việc
tìm kiếm được thực hiện bắt đầu tại gốc cây thư mục có chứa file cần tìm).
n -follow : (tùy chọn này chỉ áp dụng cho thư mục) nếu có tùy chọn này thì các liên
kết tượng trưng có trong một thư mục liên kết sẽ được chỉ ra.
n -help, --help : hiển thị kết quả của lệnh find và thoát.
n -amin n : tìm file được truy nhập n phút trước.
n -atime n : tìm file được truy nhập n*24 giờ trước.
n -cmin n : trạng thái của file được thay đổi n phút trước đây.
n -ctime n : trạng thái của file được thay đổi n*24 giờ trước đây.
n -empty : file rỗng và hoặc là thư mục hoặc là file bình thường.
n -user tên-ng-ời: file được sở hữu bởi người dùng tên-người.
n Vd:
n # find -name 'what*'
n ./usr/bin/whatis
n ./usr/bin/whatnow
55
Sao lưu các file
n tar [tùy-chọn] [, ...] [, ...]
n -c, --create : tạo file lưu trữ mới.
n --delete : xóa từ file lưu trữ (không sử dụng cho băng từ).
n -r, --append : chèn thêm file vào cuối file lưu trữ.
n -t, --list : liệt kê nội dung của một file lưu trữ.
n -u, --update : chỉ thêm vào file lưu trữ các file mới hơn các file đã có.
n -x, --extract, --get : tách các file ra khỏi file lưu trữ.
n -C, --directory tên-thư-mục : thay đổi đến thư mục có tên là tên-thư-mục.
n --checkpoint : đưa ra tên thư mục khi đọc file lưu trữ.
n --remove-files : xóa file gốc sau khi đã sao lưu chúng vào trong file lưu
trữ.
n --totals : đưa ra tổng số byte đ-ợc tạo bởi tùy chọn --create.
n -v, --verbose : hiển thị danh sách các file đã được xử lý.
n Ví dụ
n # tar --create --file ./backup /usr/src
56
Nén, giải nén và xem nội dung các file
n Cú pháp các lệnh này như sau:
n gzip [tùy-chọn] [ -S suffix ] [ ]
n gunzip [tùy-chọn] [ -S suffix ] [ ]
n zcat [tùy-chọn] [ ]
n compress [tùy-chọn] []
n uncompress [tùy-chọn] []
n Ví dụ
n # gzip /home/test/vd1
n # ls /home/test
n Desktop data dictionary newt-0.50.8 rpm save vd1.gz
n # zcat /home/test/vd1
57
Cơ chế pipe
n | | |
58
Tổng kết
n File, thư mục, hệ thống file
n Một số thư mục đặc biệt
n Quyền truy cập, quyền sở hữu tệp và thư mục
n Một số lệnh cơ bản thường dùng
n Định hướng lại vào/ra và pipe
Các file đính kèm theo tài liệu này:
- s4_9422.pdf