chown tên người dung file xác định người chủ của tập tin file... chown –r tên người dung thư mục xác định chủ của thư mục và tất cả các thư mục con 18.. chmod –r a+r thư mục thêm quyền đ
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA CÔNG NGHỆ THÔNG TIN
-* -BÁO CÁO
THỰC HÀNH CHUYÊN ĐỀ 2
NHÓM : 10A
Đà Nẵng, tháng 10 năm 2012
Trang 2I. Các lệnh cơ bản trong Linux
1
2
Trang 48.
Trang 59 cd di chuyển sang thư mục home/người dung
10 cd thư mục di chuyển sang thư mục home/người dung/thư mục
11 ls –l thư mục hoặc
Trang 715 ls –s hoặc
16 chown tên người dung file xác định người chủ của tập tin file
Trang 817 chown –r tên người dung thư mục xác định chủ của thư mục và tất
cả các thư mục con
18 chgrp nhóm file chuyển tập tin file thành sở hữu của nhóm người dùng
19 chmod u+x file thêm quyền thực thi file cho người dung
x: excute r:read w:write
20 chmod –r a+r thư mục thêm quyền đọc thư mục và tất cả các thư mục
trong nó cho mọi người
Trang 921 cp file1 file2 chép file1 sang file2
22 cp file thư mục chép file vào trong thư mục
23 cp –R thư mục 1 thư mục2
chép toàn bộ thư mục 1 vào thư mục 2
Trang 1024 mv file1 file2 chuyển tên file1 thành file2
25 mv thư mục 1 thư mục 2
chuyển tên thư mục 1 thành thư mục 2
26 mv file thư mục chuyển tập tin file vào thư mục
Trang 1127 mk dir tạo ra thư mục
28 mkdir –p thư mục 1/thư mục 2
tạo ra thư mục cha là thư mục 1 và thư mục con là thư mục 2 cùng lúc
Trang 1229 rm file xóa file trong thư mục hiện hành
30 rmdir thư mục xóa bỏ thư mục trống có tên thư mục
31 rm –rf thư mục xóa bỏ thư mục cùng tất cả các file trong thư mục đó
32 find thư mục –name file tìm tập tin có tên file trong thu mục
Trang 1333 diff file1 file2 so sánh nội dung của 2 tập tin hoặc 2 thư mục
34 cat file xuất hiện nội dung file lên màn hình ở mã ASCII
35 more file
Trang 14xuất hiên nội dung của tập tin file trên màn hình theo chế độ từng trang một : ấn phím « Enter » để xuống 1 dòng ; ấn phím « Space » để sang thêm 1 trang ; ấn phím « q » để thoát.
36 head –n file xuất hiện n dòng đầu tiên của file
37 tail –n file xuất hiện n dòng cuối cùng của file
Trang 1538 vi file soạn tập tin file dùng trình soạn thỏa vi
39 nano file soạn thảo tập tin file dùng trình soạn thảo nano
40 gedit file soạn thảo tập tin file dung trình soạn thảo gedit
41 grep chuỗi file xuất hiện các dòng chứa nội dung chuỗi trong file
Trang 1642 grep –r chuỗi thư mục
tìm nội dung chuỗi trong tất cả các tập tin trong thư mục mang tên thưmục
43 lệnh >file ghi kết quả của việc thực hiện lệnh vào trong file
44 lệnh>>file bổ sung kết quả thực hiện lệnh vào cuối file
45 gzip file.txt tạo tập tin nén file.txt.gz
Trang 1746 gunzip file.txt.gz giải nén tập tin file.txt
47 bzip2 file.txt tạo tập tin nén file.txt.bz2
48 bunzip2 file.txt.bz2 giải nén tập tin file.txt
49 sudo command thực hiện lệnh command với tư cách root
Trang 1850 gksudo command giống sudo nhưng với ứng dụng đồ họa
51 sudo –k chấm dứt chắc năng dung lệnh của root
52 uname –r cho biết phiên bản của nhân linux
53 shutdown –h now khởi động lại máy tính ngay lập tức
Trang 1954 lsusb liệt kê các thiết bị usb hoặc pci có trong máy
55 time command cho biết thời gian để thực hiện lệnh command
56 command1 command2 chuyển kết quả command1 thành đầu vào
command2
57 clear xóa màn hình của terminal
Trang 2058 ps aux hiển thị chi tiết các tiến trình
59 ps –ef hiển thị tất cả các tiến trình đã được thực hiện
Trang 2160 ps aux|grep soft hiện thị các tiến trình lien quan tới khởi động soft
Trang 2261 kill pid chấm dứt tiến trình mang số pid
62 xkill chấm dứt một ứng dụng theo dạng đồ họa
Trang 2363 whoami hiện tên người dung hiện hành
64 ping địa chỉ ip thử nối máy tới địa chỉ ip
65 ifconfig –a hiển thị thông tin về tất cả các giao diện mạng đang có
Trang 2466 poweroff –i ngưng hoạt động tất cả các nối mạng
67 fdisk –l hiển thị các phân vùng tích cực
68 lspci hiển thị các pci có trong máy tính
69 urname –a hiển thị tên máy tính trong mạng
Trang 2570 top xem tình trạng sử dụng tài nguyên Ram,CPU
71 df –h kiểm tra mức độ sử dụng HĐH
72 uptime in ra thời gian reboot gần nhất
Trang 2673 du –hs kiểm tra dung lượng thư mục
74 ls –l file|thưmuc Liệt kê chi tiết filename hoặc thư mục
75 id chỉ định danh người dung
76 lp in tài liệu ra máy in
Trang 2777 pstree hiện thị các tiến trình dưới dạng cây
78 df xem dung lượng ổ đĩa
79 env xem thông tin về biến môi trường
Trang 2880 free –t xem bộ nhớ đang sử dụng
81 fsck kiểm tra đĩa và hệ thống filesystem
82 echo chuỗi in chuỗi ra màn hình
Trang 2983 date hiển thị ngày giờ hệ thống
84 cal thang nam in ra lịch của tháng của năm
85 ls –F in ra các file có thể thực thi
86 which lệnh xem lệnh nằm ở đâu
Trang 3087 file filename xác định kiểu của filename
88 w xem các người dung đang login
89 watch lệnh chạy và hiển thị kết quả lệnh
90 passwd đổi password cho tài khoản người dung
Trang 3191 who liệt kê tất cả người dung đang dung máy
92 sort file sắp xếp các dòng trong file theo alphabet
93 info hiện thị thông tin và tài liệu trên shell
Trang 3294 netstat hiển thị kết nối mạng
95 whereis lệnh hiển thị đường dẫn đến lệnh
96 bc nhập biểu thức tính toán và thoát bằng ‘Ctrl + d’
Trang 3397 last hiển thị các user login gần nhất
98 set xác định biến môi trường
99 wc file đếm số từ trong file
Trang 34100 time clear thời gian thực hiện lệnh clear
Trang 35103 history hiển thị lịch sử các lệnh đã dung
Trang 36106 sudo –i chuyển sang quyền root
Trang 37II.Lập trình Shell
Bài 1: Giải phương trình bậc nhất
echo "giai pt bac 1"
echo -n "nhap vao a ="
read aecho -n "nhap vao b ="
read b
if [ $(echo "$a == 0"|bc) -eq 1 ];then
if [ $(echo "$b == 0"|bc) -eq 1 ];then
echo "pt vo so nghiem"
else
echo "pt vo nghiem"
fielsex=$(echo "scale=2; -$b/$a"|bc)echo "nghiem cua pt la x= $x"
fiexit 0
Bài 2: Giải phương trình bậc hai
#!/bin/sh
#include<math.h>
echo "Giai phuong trinh bac hai"
echo -n "nhap vao a="
Trang 38if [ $a = 0 ]; then
if [ $b = 0 ]; then
if [ $c = 0 ]; thenecho "phuong trinh vo so nghiem"
elseecho "phuong trinh vo nghiem"
fielse
echo "phuong trinh co 1 nghiem x= $((-$c/$b))"
elsex1=`echo "scale=4; (-$b+ sqrt($delta))/(2*$a)" |bc -l`
x2=`echo "scale=2; (-$b- sqrt($delta))/(2*$a)" |bc -l`
echo "x1 = $x1"
echo "x2 = $x2"
fifi
fi
exit 0
Trang 39Bài 3: Giải hệ phương trình bậc nhất 2 ẩn
#!/bin/sh
#include<math.h>
echo "giai phuong trinh bac nhat 2 an"
echo "nhap a1:"
if [ $d1 -eq 0 ] && [ $d2 -eq 0 ];then
echo "he phuong trinh vo so nghiem"
Trang 40Bài 4: Giải hệ phương trình bằng phương pháp Gauss
n=$(head -$i <input3.txt)
echo "He phuong trinh da cho:"
while [ $i -le $n ]; do
b[$i]=$( head -$(($i+1)) < input3.txt|tail -1)
for var in ${b[$i]}
do
a[$j]=$varecho -n " ${a[$j]}"
j=$(($j+1))
Trang 41if [ $(echo "$j > n"|bc) -eq 1 ];then
echo "du lieu khong dung"
read pelse
doi_dong $i $jfi
Trang 42k=$(($i))while [ $k -le $(($n+1)) ];do
a[$((($j-1)*($n+1)+$k))]=$(echo 1)*($n+1)+$k))]}*$m+${a[$((($j-1)*($n+1)+$k))]}"| bc)
"scale=9;${a[$((($i-k=$(($k+1))done
j=$(($j+1))done
while [ $j -le $n ];do
s=$(echo "scale=9; $s+${a[$((($i-1)*($n+1)+$j))]}*${x[$j]}"| bc)
Trang 43nghiem=$(echo "scale=3; ${x[$i]}/1"| bc)
if [ $(echo "$nghiem > 0"|bc) -eq 1 ] && [ $(echo "$nghiem < 1"|bc) -eq
Trang 44Bài 5: Giải hệ phương trình bằng phương pháp Gauss-Siedel
#!/bin/bash
echo " ================================"
echo " || ||"
echo " || Phương phap Gauss-Siedel ||"
echo " || ||"
echo " ================================"
echo ""
e=0.001
#=================================
#nhp ma tran tu file
nhap_xuat_file()
{
local i=1
local j=1
n=$( head -$i < input3.txt|tail -1)
echo "he phuong trinh da cho la :"
while [ $i -le $n ]
do
b[$i]=$( head -$(($i+1)) < input3.txt|tail -1)
for var in ${b[$i]}
do
a[$j]=$var
echo -n " ${a[$j]}"
j=$(($j+1))
done
echo ""
i=$(($i+1))
done
}
#==================================
# nhap nghiem ban dau va khoi tao mang y
nhap_nghiem()
{
echo "nhap vao xap xi nghiem ban dau :"
local i=1
while [ $i -le $n ];do
read -p "x[$i]=" x[$i]
y[$i]=1
i=$(($i+1))
done
Trang 45if [ $j -ne $i ];then
s=$(echo "scale=9; $s+${a[$((($i-1)*($n+1)+$j))]}*${x[$j]}"| bc)
fij=$(($j+1))done
y[$i]=$(echo "scale=9; (${a[$((($i-1)*($n+1)+$n+1))]}+($s*(-1)))/${a[$((($i-1)*($n+1)+$i))]}"|bc)
if [ $(echo "${x[$i]} > ${y[$i]}"| bc) -eq 1 ];then
temp=$(echo "scale=9;${x[$i]}-${y[$i]}"| bc)else
temp=$(echo "scale=9;${y[$i]}-${x[$i]}"| bc)fi
if [ $(echo "$temp > $e"| bc) -eq 1 ];then
t=1fi
i=$(($i+1))done
k=1
while [ $k -le $n ];do
x[$k]=$(echo "scale=3; ${y[$k]}/1"| bc)
Trang 46if [ $(echo "${x[$i]} > 0"|bc) -eq 1 ] && [ $(echo "${x[$i]} < 1"|bc) -eq
Trang 47Bài 6: Giải hệ phương trình bằng phương pháp Giảm dư
#!/bin/bash
#include<math.h>
echo " =========================="
echo " || ||"
echo " || Phương phap Giamdu ||"
echo " || ||"
echo " =========================="
echo ""
e=0.001
#===============================
# doc va xuat ra ma tran
nhap_xuat_file()
{
i=1
n=$( head -$i < input3.txt|tail -1)
j=1
echo "he phuong trinh da cho la :"
while [ $i -le $n ]
do
b[$i]=$( head -$(($i+1)) < input3.txt|tail -1)
for var in ${b[$i]}
do
a[$j]=$var
echo -n " ${a[$j]}"
j=$(($j+1))
done
echo ""
i=$(($i+1))
done
}
#========================================
#nhap xap xi nghiem ban dau vao mang x va khoi tao mang so du r
nhap_nghiem()
{
echo "nhap vao xap xi nghiem ban dau :"
i=1
while [ $i -le $n ];do
read -p "x[$i]=" x[$i]
r[$i]=1
i=$(($i+1))
done
Trang 48while [ $j -le $(($n+1)) ];do
a[$((($i-1)*($n+1)+$j))]=$(echo "scale=9; ${a[$((($i-1)*($n+1)+
$j))]}/$t"| bc)
j=$(($j+1))done
while [ $j -le $n ];do
r[$i]=$(echo "scale=9; ${r[$i]}+(-1*${a[$((($i-1)*($n+1)+$j))]}*${x[$j]})"| bc)
j=$(($j+1))
Trang 49while [ $i -le $n ];do
if [ $(echo "${r[$i]} > 0"| bc) -eq 1 ];then
Trang 50if [ $(echo "$noexit > $e"| bc) -eq 1 ];then
t=1fi
i=$(($i+1))done
Trang 51Bài 7: Giải hệ phương trình bằng phương pháp Krame
#!/bin/bash
echo " ========================="
echo " || ||"
echo " || Phương phap Krame ||"
echo " || ||"
echo " ========================="
echo ""
#===============================
# doc va xuat ra ma tran
nhap_xuat_file()
{
i=1
n=$( head -$i < input3.txt|tail -1)
j=1
echo "he phuong trinh da cho la :"
while [ $i -le $n ]
do
b[$i]=$( head -$(($i+1)) < input3.txt|tail -1)
for var in ${b[$i]}
do
a[$j]=$var echo -n " ${a[$j]}"
j=$(($j+1))
Trang 52#tinh gia tri cua dinh thuc D
#tao ma tran vuong b
b[$((($i-1)*$n+$j))]=${a[$((($i-1)*($n+1)+$j))]}
j=$(($j+1))done
i=$(($i+1))done
Trang 53# bien doi ma tran vuong b ve ma tran tam giac
# tinh dinh thuc D
j=$(($j+1))done
if [ $(echo "$j > n"|bc) -eq 1 ];then
echo "du lieu khong dung"
read pelse
doi_dong $i $jfi
b[$((($j-1)*$n+$k))]=$(echo "scale=9;(${b[$((($i-1)*$n+
$k))]}*$m+${b[$((($j-1)*$n+$k))]})/1"| bc)
k=$(($k+1))done
j=$(($j+1))done
Trang 54D=1
i=1
while [ $i -le $n ];do
D=$(echo "scale=9; $D*${b[$((($i-1)*$n+$i))]}"| bc)
while [ $i -le $n ];do
x[$1]=$(echo "scale=9; ${x[$1]}*${b[$((($i-1)*$n+$i))]}"| bc)
while [ $i -le $n ];do
x[$1]=$(echo "scale=9; ${x[$1]}*${b[$((($i-1)*$n+$i))]}"| bc)
Trang 55echo -n "nghiem cua phuong trinh da cho la:"
if [ $(echo "$D == 0"| bc) -eq 1 ];then
i=1
while [ $i -le $n ];do
if [ $(echo "${x[$i]} != 0"| bc) -eq 1 ];then
while [ $i -le $n ];do
x[$i]=$(echo "scale=3; ${x[$i]}/$D"| bc)
if [ $(echo "${x[$i]} < 1"|bc) -eq 1 ] && [ $(echo "${x[$i]} > -1"|bc) -eq 1 ];then
echo -n "0"
fiecho -n "${x[$i]} "
i=$(($i+1))done