bài tập xây dựng shell trong linux là trong những từ khóa được tìm kiếm nhiều độc nhất vô nhị trên google về chủ thể bài tập lập trình shell vào linux.

Bạn đang xem: Bài tập shell linux có lời giải

Trong nội dung bài viết này,xaydungweb.vn đang viết bài viết Tổng hợp những bài tập lập trình shell trong linux tiên tiến nhất 2020.

*

Tổng hợp các bài tập lập trình shell vào linux tiên tiến nhất 2020.


LẬP TRÌNH SHELL6.1. Chương trình tính tổng 1-> n– Minh họa các cấu trúc while vì chưng done, và cách dùng <>, $(()).– Tập tin tong1.sh#!/bin/shecho “Chuong trinh tinh tong 1- $1”index=0tong=0while < $index -lt $1 >doindex=$(($index + 1))tong=$(($tong + $index))doneecho “Tong 1-$1= $tong”exit 0– Chạy chương trình :chmod a+x tong1.sh./tong1 100===============================================================================================

6.2. Chương trình tính giai thừa của một số– Minh họa các cấu tạo while vì done, và phương pháp dùng <>, $(()).– Tập tin giaithua.sh#!/bin/shecho “Chuong trinh tinh $1!”index=0gt=1while < $index -lt $1 >doindex=$(($index + 1))gt=$(($gt * $index))doneecho “$1!= $gt”exit 0– Chạy lịch trình :chmod a+x giaithua.sh./giaithua 5

========================================================================================6.3. Lịch trình đếm số dạng của một tập tin– Minh họa các kết cấu if then fi, while vì done, và hướng dẫn sử dụng <>, $(()).– Tập tin demdong.sh#!/bin/shecho “Chuong trinh dem so dong cua tap tin $1”

n=0while read line– 22-don=$(($n + 1))doneecho “So dong cua tap tin $1 la : $n”exit 0

– Chạy lịch trình :chmod a+x demdong.sh./demdong bai1.txt

6.4. Chương trình đếm số trường đoản cú của một tập tin– Minh họa các cấu trúc for vì chưng done, while vị done.– Tập tin demtu.sh#!/bin/shecho “Chuong trinh dem so tu cua tap tin $1”

n=0while read linedofor wd in $linedon=$(($n + 1))donedoneecho “Tong so tu cua tap tin $1 la : $n”exit 0

– Chạy công tác :chmod a+x demtu.sh./demtu bai1.txt

===========================================================================================6.5. Công tác tìm định dạng có độ dài to nhất trong một tập tin– Minh họa các cấu tạo if then fi, while vì chưng done.– Tập tin dongmax.sh#!/bin/shecho “Chuong trinh tim dong dẻo nhat vào tap tin $1”

n=0max=0dong=””while read linedon=`expr length “$line”`if < $n –gt $max >thendong=”$line”

max=$nfidoneecho “Dong vào tap tin $1 co vày dai max = $max la : $dong”exit 0

– Chạy công tác :chmod a+x dongmax.sh./dongmax bai1.txt

6.6. Chương trình tìm một xâu vào một tập tin– Minh họa các cấu trúc if then fi, while vì done.– Tập tin timxau.sh#!/bin/shecho “Chuong trinh tim xau $1 trong tap tin $2”

wordlen=`expr length “$1”` # vì chưng dai tu can timwhile read tmec.edu.vnlinedotmec.edu.vnlen=`expr length “$tmec.edu.vnline”` # vì chưng dai cua dong vua docend=$(($tmec.edu.vnlen – wordlen + 1”index=1while < $index –le $end >dotemp=`expr substr “$tmec.edu.vnline” $index $wordlenif < “$temp” = $1 >thenecho “Tim nắm $1 tai dong $tmec.edu.vnline”breakfiindex=$(($index + 1))donedoneexit 0

– Chạy công tác :chmod a+x timxau.sh./timxau abc bai1.txt

– search số lớn nhất trong dãy số nhập vào#/bin/bash

# input đầu vào an array of elementsfunction input()

echo -n “n= ”read n

for ((i=0; i doecho -n “a<$i> ” =read a<$i>done

#max of two numbersfunction max2nums()

if < “$1” -gt “$2” >; thenmax1=$1echo $1elsemax1=$2echo $2fireturn $max1

#max of an arrayfunction maxs()

max=$a<0>for ((i=1; i domax=$(max2nums $a<$i> $max)doneecho “max = $max”

inputmaxs

exit $?

=========================================================================================

Bài 1: Viết 1 lịch trình Shell phát âm từng loại trong 1 tệp tin văn bản. Giữa những lần hiển thị dòngtmec.edu.vn thì bao gồm 1 thắc mắc từ Shell: “bạn có mong muốn đọc dạng tiếp theo không ? Y/n” nếu vấn đáp là “y” hoặc“Y” thì in thể loại tiếp theo, trong trường hợp ngược lại thì chấm dứt chương trình đọc.Code:#!/bin/shecho – e “ nhap ten file:”read filenameif < ! –F “$filename” >; thenecho “ $filename not exists”exit 1fi

answer=””count=0numlines=`wc –l $filename|sed ‘s/^ *//’|cut –d “ “ –f 1`

echo “ so dong: $numlines”while < “$answer”!=”n”>doecho –e “tiep tuc(y/n)?”read answerif < “answer” = “y” >; thenecho “doc het tệp tin rui”exit 0ficount=$(($count+1))sed –n $countp $filenamedoneexit 0

============================================================================================

Bài 2: Viết 1 định dạng lệnh chất nhận được đọc 3 loại trước tiên trong 1 file văn phiên bản mà k được dùngbất cứ vòng lặp nào
Code:sed –n 1,3p $filename=========================================================================================

Bài 3: Viết 1 lịch trình trong Shell sao để cho với tham số đầu tiên là tên tệp tin tmec.edu.vn cùng nó sẽ in ramàn hình content file này, dẫu vậy với all ký tự số đông viết hoa
Code:#!/bin/shecho – e “ nhap ten file:”read filenameif < ! –F “$filename” >; thenecho “ $filename not exists”exit 1fi

echo “file sau thời điểm chuyen doi:”tr ‘’ ‘’ exit 0

===========================================================================================

Bài 4: Viết 1 công tác Shell sửa đổi văn phiên bản sao mang đến nếu trên 1 loại mà có tương đối nhiều hơn 2khoảng trắng ngay tức thì nhau thì được sửa chữa bằng 1 khoảng chừng trắng
Code:tr –s ‘ ‘ ‘ ‘ $filename
Bài 1: Viết chương trình Shell liệt kê những tham số truyền vào công tác theo từng dạng với cúpháp: “day la tham so thu N va teo ten la NNNN” bởi các cách sau:• dùng vòng lặp FOR.• dùng vòng WHILE cùng lệnh SHIFT• dùng vòng WHILE và không sử dụng lệnh SHIFT.Code:#!/bin/sh

#while + SHIFT:count=0while < “$#” –ne 0 >doecho “day la tham so thu $count: $1”count=$(($count + 1))shiftdone#WHILE without SHIFT:count=1total=$(($#+1))while < “$*” –ge 0 >doecho –n “day la tham so thu $count: ”eval echo $$countcount=$(($count+1))done

#for:

count=1for arg in “$*”doecho “day la tham so thu $count: $arg”count=$(($count + 1))done===============================================================================================

Bài 5: Viết lịch trình Shell đánh giá các tham số và các đối số truyền vào tương xứng vớitham số đó. Mang sử công tác myshell đủ sức nhận 4 tham số là a,b,c,d nhưng chỉ bao gồm tham số clà có đối số truyền vào. Khi gõ câu lệnh trong Shell: myshell –abc argument –d other_argumentthì với tham số c ta bao gồm đối số là argument, ngoài ra chương trình còn 1 đối số là other_argument.

Xem thêm: Xem Bố Ơi! Mình Đi Đâu Thế ? ” T47: Bố Hoo Dạy Con Cách “Tán Gái”

Code:while getopts abc:d optiondocase “$option”ina) echo “co tham so a”;;b) echo “co tham so b”;;c) echo “co tham so c, doi so la $OPTARG”;;d) echo “co tham so d”;;?)echo “ tham so nay khong hop le”esacdone

while < “$OPTIND” –le “$#” >doecho –n “tham so tu do: “eval echo $$OPTINDshiftdone=================================================================================

Bài 6 : Viêt́ chương triǹ h shell giaỉ phương triǹ h bâc̣ hai : ax2 + bx +c =0 với những tham số a,b,c nhập từ bỏ bàn phiḿ va ̀ cać kêt́ qua ̉ chiń h xać đêń nhị chữ số.Code:#!/bin/bashecho -n “a= ”read aecho -n “b= ”read becho -n “c= ”read cdelta=$(echo “$b^2 – 4*$a*$c” | bc)if < $delta -lt 0 >thenecho “pt vo nghiem”elif < “$delta” -eq 0 >thenecho -n “pt teo nghiem kep x= ”x=$(echo “scale=2; -$b/(2*$a)” | bc)echo “$x”elseecho “phuong trinh teo 2 nghiem”x1=$(echo “scale=2; -($b + sqrt($delta))/(2*$a)” | bc)echo “x1= $x1”x2=$(echo “scale=2; -($b – sqrt($delta))/(2*$a)” | bc)echo “x2= $x2”fiexit 0Bài 2 :Viêt́ chương triǹ h shell liêṭ kê cać tâp̣ tin vào thư muc̣ nhâp̣ vaò tứ ̀ baǹ phím ma ̀ teo ́ kić h thước > 4KB theo hình thức sau :Tổng số tâp̣ tin
Tập tin 1 click thước…..tập in n kích thước
Code:#!/bin/bash
SIZE=4096 # hằng sốecho -n “thu muc : ”read directoryindex=0for tệp tin in $( tìm kiếm $directory -type f)dofilesize=$(ls -l $file | awk ‘print $5‘) # trươǹ g thư ́ 5 cuả kêt́ qua ̉ lêṇ h ls –l la ̀ kić hif < $filesize -gt $SIZE > # thước filethen_filename<$index>=$file # gán man̉ g tệp tin name_filesize<$index>=$filesize # gán man̉ g file sizelet “index +=1”fidoneecho “Tong so tap tin : $index”for ((i=0 ; i doecho -e “`basename $_filename` kich thuoc: $_filesize”doneexit 0==============================================================================

Bài 7 :Viêt́ chương triǹ h shell đoc̣ môṭ danh saćh cać người dùng từ tập tin users rồi test nhìn thấy các người dùng này có thuộc nhóm W3 hay không? Nêú teo ́ user naò thuôc̣ nhóm thi ̀ xoá user đo ́ ra khoỉ group W3 ngươc̣ lại thi ̀ thêm người dùng đo ́ vaò group.Code:#!/bin/bash
FGROUP=/etc/group
GROUPNAME=W3UFILE=usersif < ! -E $UFILE >; thenecho “File users does not exist”exit 1fiall_users=( $(cat $FGROUP | grep -w $GROUPNAME | cut -d: -f4 | tr , ” “) )# all_users=( $(cat $FGROUP | awk –F: ‘/$GROUPNAME/ print $4’ | tr , ” “) )num_usr_grp=$#all_users<

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bạn dạng đầy đầy đủ của tư liệu tại trên đây (2.05 MB, 5 trang )


chất vấn giờ khối hệ thống dựa trên kia xuất những câu kính chào tương ứng
Chương trình tiến hành phép toán: cộng, trừ, nhân, phân chia của 2 số nhập vào.Chương trình thực hiện biến hóa số học (chuyển từ số thập phân quý phái số nhị phân).Lấy thời hạn của khối hệ thống lưu vào 1 file.Chương trình đếm loại trong tập tin với đếm số ký tự trong tập tin.Viết shellscript liệt kê quyền lợi và nghĩa vụ và tên tất cả các file trong một thư mục.Viết shellscript dấn tham số là một đường dẫn file, xuất ra nghĩa vụ và quyền lợi của tín đồ sửdụng bên trên file đó (quyền đoc, ghi, thực thi)Viết shellscript kiểm tra giá trị nhập vào liệu có phải là số nguyên tố xuất xắc không?
Chương trình tính giai quá của một số nhập vào.Viết chương trình yêu ước nhập họ, tên sau đó so sánh họ, tên vừa nhập cùng với họ, tên củabạn (tùy chọn), nếu như đúng thì thông báo ra màn hình.Viết chương trìnhsắp xép dãy sốvừa nhập từ bỏ bànphím.Viết một script tìm kiếm kiếm một nhiều từ trong một file.
Viết một script so sánh nội dung 2 tập tin sử dụng lệnh diff.Viết một script dịch chuyển các tập tin gửi vào từ bỏ dạng đối số cùng lưu vào folder $HOME/old(nếu chưa xuất hiện thư mục này, hãy tạo nên mới).Kiểm tra thư mục/tập tin phải tìm gồm tồn tại trong khối hệ thống hay không?viết chương trình tìm toàn bộ các tập tin với thư mục ban đầu bằng trường đoản cú “bai”, xuất ra filetmec.edu.vn.txt, sau đó xóa tất cả các tập tin và thư mục ban đầu bằng “bai tap”. Xuất ra cácfile tmec.edu.vn số tập tin/thư mục bị xóa. Kiểm soát sự đúng mực các tập tin xóa.


*
vật liệu và cách thức nhiệt luyện và tối ưu cơ khí chi tiết chốt nhíp ôtô, làm việc trong điều kiện chịu mài mòn 17 3 9
*
Chọn vật liệu và phương thức nhiệt luyện và gia công cơ khí chi tiết chốt nhíp ôtô, làm việc trong điều kiện chịu mài mòn. 17 2 8
*
Đề thi lập trình nhúng cuối kì i tất cả đáp án 4 1 18
*
Đề thi xây dựng nhúng thân kì bao gồm đáp án 4 2 41
*
lập trình sẵn nhúng ARM Linux course 1 117 1 4
*
Giáo án môn Toán lớp 3 :Tên bài bác dạy : Luyện tập nhận thấy thứ tự những số tất cả bốn chữ số. Làm cho quen với các số tròn nghìn. Pot 4 870 0
*
report bài tập phệ lập trình nhúng cơ bạn dạng tìm hiểu giao diện SPI 35 1 3
*
Đề thi thử thpt QG năm trước môn hóa bao gồm lời giải chi tiết chuyên nguyễn quang diệu lần 2 16 546 0
*
Nguyên lý cụ thể máy chương 1 những sự việc cơ bản cơ cấu, chi tiết máy trong giám sát và đo lường thiết kế 63 677 5
*
toàn cục các bài xích tập về thiết kế nhúng căn bản, nto, cp, chan,le,max, min,chèn, xóa,tách với mảng 1 chiều.... 70 747 0