Tải bản đầy đủ (.docx) (9 trang)

BÀI tập SHELL SCRIPT

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (111.14 KB, 9 trang )

BÀI TẬP SHELL SCRIPT.
1 _ Nhập vào số tự nhiên N, in tất cả các số từ 1 đến N
#!/bin/bash
echo “Nhap so N”
read N
for ($i=1 ; $i<=N ;$ i++)
do
echo "i"
done
2 – Chương trình tính tổng các số từ 1 đến N
file tong1.sh
#!/bin/sh
echo “Chuong trinh tinh tong 1- $1”
index=0
tong=0
while[ $index -lt $1 ]
do
index=$(($index + 1))
tong=$(($tong + $index))
done
echo "Tong 1-$1= $tong"
exit 0

1

1


3 – Tính tổng N!
Tập tin giaithua.sh
#!/bin/bash


echo “Chuong trinh tinh tong_$1!”
index=0
tong=0
gt=1
while[ $index -lt $1 ]
do
index=$(($index + 1))
gt=$(($gt * $index))
tong=$(($tong + $gt))
done
echo "$1!= $gt"
echo "Tong 1-$1= $tong"
exit 0

2

2


4 – Viết chương trình tổng các số chẵn/lẻ
#!/bin/bash
echo “Nhap so n”
read n
s1=0;
s2=0;
for(i=0 ; i<=n ; i++)
do
if (($i % 2==0))
then
s1=$(($s1+$i))

else
then
s2=$(($s2+$i))
fi
done

3

3


5 – Viết chương trình tính tổng các số chẵn/lẻ chia hết cho 2, 4 hoặc 3,5
#!/bin/bash
echo “Nhap n”
Read n
s1=0
s2=0
for($i=0 ; $i<=n ; $i++)
do
if (($i % 2==0 && $i % 4==0))
then
s1=$(($s1+$i))
elif (($i % 3==0 && $i % 5==0))
then
s2=$(($s2+$i))
fi
done
6 – Giải và biện luận phương trình bậc nhất
#!/bin/bash
echo “Nhap so a”

read a
echo “Nhap so b”
read b
if (($a==0 && $b==0))
then
echo “Phuong trinh co vo so nghiem”
elif (($a!=0 && $b!=0))
then
x=$((-$b/$a))
echo “Phuong trinh co nghiem $x”
4

4


else
echo “Phuong trinh vo nghiem”
fi
exit 0
7 – Giải và biện luận phương trình bậc hai
!#/bin/bash
echo “Nhap a”
read a
echo “Nhap b”
read b
echo “Nhap c”
read c
delta=$(($(b*b) – 4*$a*$c))
if (($delta <0))
then

echo “Phuong trinh vo nghiem”
elif (($delta =0))
then
x=$((-$b/$(2*a)))
echo “Phuong trinh co nghiem kep $x”
else
then
x1=$(( (-$b+sqrt($delta) / $(2*a))))
x2=$(( (-$b - sqrt($delta) / $(2*a))))
echo “Phuong trinh co 2 nghiem $x1,$x2”
fi
exit 0

5

5


8 – Tìm hai số lớn nhất và nhỏ nhất trong mảng vừa nhập
#/bin/bash
# nhập đọc một mảng
function input()
{
echo -n "n= "
read n
for ((i=0; ido
echo -n "a[$i] " =
read a[$i]
done

}
#so sánh hai số lấy số max
function max2nums()
{
if [ "$1" -gt "$2" ]; then
max1=$1
echo $1
else
max1=$2
echo $2
fi
return $max1
}
#tìm số lớn nhất trong mảng
function maxs()
{
max=${a[0]}
for ((i=1; ido
max=$(max2nums ${a[$i]} $max)
done
echo "max = $max"
}
input
maxs.exit$?
6

6



9 – Đếm số dòng trong một đoạn văn
#!/bin/bash
echo “Chuong trinh dem so dong cua doan van”
{
n=0
while read line
do
n=$(($n + 1))
done
echo “So dong cua doan van la: $n”
}
exit 0
10 – Đếm số từ trong một đoạn văn
#!/bin/bash
echo “Chuong trinh dem so tu cua doan van”
{
n=0
while read line
do
for wd in$line
do
n=$(($n + 1))
done
done
echo “Tong so tu cua doan van la: $n”
}
exit 0
7

7



11.shell.

groupadd CN3
useradd -G CN3 -d
/home/BAITHI -m Vinh passwd -du Vinh su Vinh
mkdir -p Tailieu/Hoa/Voco
mkdir -p Tailieu/Hoa/Huuco
mkdir -p Tailieu/Ly
cd Tailieu/Hoa/Huuco
touch Bai1.doc
touch Bai2.doc
a)

b)

// So dong
wc -l Bai1.doc
wc -l Bai2.doc
// So tu
wc -w Bai1.doc
wc -w Bai2.doc
// Kich thuoc
wc -c Bai1.doc
wc -c Bai2.doc
cp Bai1.doc .

c) cat Bai1.doc Huuco/Bai2.doc >
../Ly/vatly.doc

d)
cd ../Ly
head -8 vatly.doc > temp.txt
tail -4 temp.txt > view.txt
rm temp.txt
e) mount /dev/cdrom /mycdrom
8

8


mount /dev/hdc2 /mydir
f) find /mycdrom -size +500k –
mtime -4 unmount /mycdrom
unmount /mydir
eject
g) chmod u+rx-w vatly.doc
chmod o+r-wx vatly.doc
chmod 544 vatly.doc

9

9



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×