HVAonline
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

HVAonline

Security, Designing, Hacking, Programming
 
Trang ChínhLatest imagesTìm kiếmĐăng kýĐăng Nhập
Tìm kiếm
 
 

Display results as :
 
Rechercher Advanced Search
Latest topics
» Xác định định dạng dữ liệu
Tóm tắt Linux Shell Programming I_icon_minitimeFri Jul 10, 2015 7:02 pm by tran quang huy

» Compra Viagra. viagra generico catalogo
Tóm tắt Linux Shell Programming I_icon_minitimeThu Aug 04, 2011 1:25 pm by Khách viếng thăm

» Compra Viagra. viagra generico all estero
Tóm tắt Linux Shell Programming I_icon_minitimeThu Aug 04, 2011 11:55 am by Khách viếng thăm

» real time gaming online casinos
Tóm tắt Linux Shell Programming I_icon_minitimeWed Aug 03, 2011 8:11 pm by Khách viếng thăm

» Why wont my phone lt me use GIF images?
Tóm tắt Linux Shell Programming I_icon_minitimeWed Aug 03, 2011 7:34 pm by Khách viếng thăm

» fish oil dietary supplement
Tóm tắt Linux Shell Programming I_icon_minitimeWed Aug 03, 2011 9:44 am by Khách viếng thăm

» How do i turn on cookies on .my headset?
Tóm tắt Linux Shell Programming I_icon_minitimeTue Aug 02, 2011 10:25 pm by Khách viếng thăm

» гинекология грибы
Tóm tắt Linux Shell Programming I_icon_minitimeMon Aug 01, 2011 10:33 pm by Khách viếng thăm

» backlink popularity backlink services
Tóm tắt Linux Shell Programming I_icon_minitimeMon Aug 01, 2011 3:34 pm by Khách viếng thăm

Top posters
conmale
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
quanta
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
seamoun
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
mrro
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
quanlytruong
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
mulan
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
TranVanMinh
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
Z0rr0
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
zeno
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
WinDak
Tóm tắt Linux Shell Programming EmptyTóm tắt Linux Shell Programming I_voting_barTóm tắt Linux Shell Programming Empty 
Thống Kê
Hiện có 8 người đang truy cập Diễn Đàn, gồm: 0 Thành viên, 0 Thành viên ẩn danh và 8 Khách viếng thăm

Không

Số người truy cập cùng lúc nhiều nhất là 64 người, vào ngày Sun Oct 13, 2024 2:44 am

 

 Tóm tắt Linux Shell Programming

Go down 
Tác giảThông điệp
TranVanMinh

TranVanMinh


Tổng số bài gửi : 11
Join date : 18/10/2010

Tóm tắt Linux Shell Programming Empty
Bài gửiTiêu đề: Tóm tắt Linux Shell Programming   Tóm tắt Linux Shell Programming I_icon_minitimeMon Oct 18, 2010 9:43 pm

Tóm tắt Linux Shell Programming


Tạo file script

* Soạn thảo file text, đặt tên file shellfile (có đuôi bất kỳ), dòng đầu tiên có dòng sau: #!/bin/sh, sau đó là các lệnh Shell hoặc các lệnh Linux.
* Chạy các lệnh sau để có thể chạy được chmod +x shellfile , sau đó có thể chạy bằng lệnh ./shellfile

Ý nghĩa các ký tự

* Bắt đầu bằng dấu '#'- ký hiệu rằng dòng đấy là comment.
* Dấu ngoặc đơn 'a' sẽ in nguyên văn đoạn text trong ngoặc.
* Dấu "a", sẽ in nguyên văn đoạn text, trong đó biến có thể được thay giá trị.

Các biến

* Biến không cần phải khai báo trước, bắt đầu bằng chữ cái (ví dụ là var), khi tham chiếu thì thêm dấu $ ở trước, ví dụ $var. (gán var=2; thì khi echo $var, sẽ cho kết quả là 2).
* có thể dùng biến và nối với ký tự như sau: ${var}nd thì kết quả trả về 2nd.

Pipes, redirection and backtick

* pipes (|) gửi đầu ra output (stdout) của một tiến trình sang đầu vào (stdin) của mộ tiến trình khác.

Code:

grep "hello" file.txt | wc -l

* redirection: ghi đầu ra output của mọt chương trình ra một file khác hoặc nối vào file khác
> ghi ra file, nếu nó đã tồn tại thì ghi đè nó
>> Nối vào file cũ nếu đã tồn tại hoặc nếu chưa có thì tạo ra file mới và ghi dữ liệu vào đó.

* Backtick
Đầu ra của một chương trình được sử dụng làm tham số cho chương trình khác (không phải như đầu vào stdin như ở trên) cho một lệnh khác. Bạn cũng có thể dùng đầu ra output như là biến, tham số của chương trình khác.
Lệnh

Code:

find . -mtime -1 -type f -print

sẽ tìm tất cả các file được thay đổi trong vòng 24 giờ qua (-mtime -2 sẽ là 48). Nếu bạn muốn nén lại thành một file để lưu trữ thì lệnh có thể được sử dụng như:

Code:

tar xvf file.tar infile1 infile2 ...

Bạn có thể gộp hai lệnh đó và dùng dấu (`), không phảit dấu ngoặc đơn ('):

Code:

#!/bin/sh
# Sử dụng dấu (`) không phải dấu ('):
tar -zcvf lastmod.tar.gz `find . -mtime -1 -type f -print`

Lệnh có cấu trúc

* Lệnh "if": kiểm tra điều kiện đúng :

Code:

if ....; then
....
elif ....; then
....
else
....
fi

* Lệnh "test" thường được viết như " [ ] ". Lưu ý là phải có dấu cách sau và trước dấu "[ ]". Ví dụ:

[ -f "somefile" ] : Test if somefile is a file.
[ -x "/bin/ls" ] : Test if /bin/ls exists and is executable.
[ -n "$var" ] : Test if the variable $var contains something
[ "$a" = "$b" ] : Test if the variables "$a" and "$b" are equal

Gõ lệnh "man test" để có thêm các tham số.

* Gõ tắt bằng các dấu && và ||:

[ -f "/etc/shadow" ] && echo "This computer uses shadow passwors"

Dấu && được sử dụng như điều kiện và. Trong ví dụ trên : "Nếu /etc/shadow tồn tại và (AND) lệnh echo sẽ được thực hiện". Toán tử OR ) cũng được sử dụng như ví dụ sau:

Code:

#!/bin/sh
mailfolder=/var/spool/mail/james
[ -r "$mailfolder" ] || { echo "Can not read $mailfolder" ; exit 1; }
echo "$mailfolder has mail from:"
grep "^From " $mailfolder

Nếu có thư thì hiện các thư, còn không thì thông báo là không đọc được và kết thúc.

* Lệnh Case: kiểm tra thoả mãn (using shell wildcards such as * and ?).

Code:

case ... in
...) do something here;;
esac

Ví dụ chúng ta có thể viết một chương trình smartzip có thể giải nén một cách tự động với các dạng:
Code:

#!/bin/sh
ftype=`file "$1"`
case "$ftype" in
"$1: Zip archive"*)
unzip "$1" ;;
"$1: gzip compressed"*)
gunzip "$1" ;;
"$1: bzip2 compressed"*)
bunzip2 "$1" ;;
*) error "File $1 can not be uncompressed with smartzip";;
esac

Ở đây $1 là tham số (có thể đến $9, $* là tất cả các tham số) ví dụ
smartzip articles.zip.

* Lệnh select được sử dụng để tương tác lựa chọn các phương án khác nhau:

Code:

select var in ... ; do
break
done
.... now $var can be used ....

Ví dụ:

Code:

#!/bin/sh
echo "What is your favourite OS?"
select var in "Linux" "Gnu Hurd" "Free BSD" "Other"; do
break
done
echo "You have selected $var"

Chương trình sẽ in ra màn hình:


What is your favourite OS?
1) Linux
2) Gnu Hurd
3) Free BSD
4) Other
#? 1
You have selected Linux


* Lệnh while-loop

Code:

while ...; do
....
done

* Lệnh for-loop

Code:

for var in ....; do
....
done


Nguồn : http://vkopensource.blogspot.com/
Về Đầu Trang Go down
https://hvaonline.forumvi.net
 
Tóm tắt Linux Shell Programming
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» Xóa mù Linux - Cài đặt và Sử dụng Fedora Core 2
» Cùng học Bash Shell Scripting
» Các địa chỉ hữu ích để học Linux
» Thêm HardDisk vào Linux
» Cài đặt JForum trên Linux

Permissions in this forum:Bạn không có quyền trả lời bài viết
HVAonline :: Hệ điều hành và thiết bị ứng dụng :: Thảo luận hệ điều hành *nix-
Chuyển đến