upd
This commit is contained in:
3
labs/lab2/scripts/q.sh
Executable file
3
labs/lab2/scripts/q.sh
Executable file
@@ -0,0 +1,3 @@
|
||||
count=10
|
||||
echo $(( count-- ))
|
||||
echo $(( count-- ))
|
||||
3
labs/lab2/scripts/script221.sh
Executable file
3
labs/lab2/scripts/script221.sh
Executable file
@@ -0,0 +1,3 @@
|
||||
#!/bin/bash
|
||||
[ "$#" -ne 2 ] && echo "usage: $0 str1 str2" && exit 1
|
||||
[ "$1" = "$2" ] && echo "equal" || echo "not equal"
|
||||
9
labs/lab2/scripts/script222.sh
Executable file
9
labs/lab2/scripts/script222.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
[ "$#" -ne 3 ] && echo "usage: $0 a b c" && exit 1
|
||||
a=$1
|
||||
b=$2
|
||||
c=$3
|
||||
max=$a
|
||||
(( b > max )) && max=$b
|
||||
(( c > max )) && max=$c
|
||||
echo "$max"
|
||||
8
labs/lab2/scripts/script223.sh
Executable file
8
labs/lab2/scripts/script223.sh
Executable file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
arr=()
|
||||
while IFS= read -r line; do
|
||||
[ "$line" = "q" ] && break
|
||||
arr+=("$line")
|
||||
done
|
||||
printf "%s" "${arr[*]} "
|
||||
|
||||
9
labs/lab2/scripts/script224.sh
Executable file
9
labs/lab2/scripts/script224.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
#!/bin/bash
|
||||
count=0
|
||||
while IFS= read -r n; do
|
||||
r=$(( n % 2 ))
|
||||
[ "$r" -eq 0 ] && break
|
||||
count=$(( count + 1 ))
|
||||
done
|
||||
echo "$count"
|
||||
|
||||
17
labs/lab2/scripts/script225.sh
Executable file
17
labs/lab2/scripts/script225.sh
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
for cmd in nano vi links; do
|
||||
command -v "$cmd" >/dev/null 2>&1 || { echo "$cmd is not installed"; exit 1; }
|
||||
done
|
||||
echo "1) nano"
|
||||
echo "2) vi"
|
||||
echo "3) links"
|
||||
echo "4) exit"
|
||||
read -r -p "choose 1-4: " choice
|
||||
case "$choice" in
|
||||
1) exec nano ;;
|
||||
2) exec vi ;;
|
||||
3) exec links ;;
|
||||
4) exit 0 ;;
|
||||
*) echo "invalid choice" ; exit 1 ;;
|
||||
esac
|
||||
|
||||
11
labs/lab2/scripts/script226.sh
Executable file
11
labs/lab2/scripts/script226.sh
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
[ "$#" -ne 3 ] && echo "usage: $0 file h|t N" && exit 1
|
||||
file=$1
|
||||
mode=$2
|
||||
num=$3
|
||||
case "$mode" in
|
||||
h) head -n "$num" -- "$file" 2>/dev/null ;;
|
||||
t) tail -n "$num" -- "$file" 2>/dev/null ;;
|
||||
*) echo "mode must be h or t" ; exit 1 ;;
|
||||
esac
|
||||
|
||||
17
labs/lab2/scripts/script23.sh
Executable file
17
labs/lab2/scripts/script23.sh
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/bin/bash
|
||||
n=${1:-1000000}
|
||||
command -v bc >/dev/null 2>&1 || { echo "bc is required"; exit 1; }
|
||||
|
||||
bench() {
|
||||
printf 'scale=10\na=1.2345678901\nb=1.2345678901\nfor(i=0;i<%s;i++) x=a*b\n' "$n" | bc >/dev/null
|
||||
}
|
||||
|
||||
start=$(date +%s.%N)
|
||||
bench
|
||||
end=$(date +%s.%N)
|
||||
|
||||
dur=$(echo "$end - $start" | bc -l)
|
||||
flops=$(echo "$n / $dur" | bc -l)
|
||||
|
||||
printf "iterations=%s\ntime_s=%s\nFLOPS=%s\n" "$n" "$dur" "$flops"
|
||||
|
||||
6
labs/lab2/scripts/test
Normal file
6
labs/lab2/scripts/test
Normal file
@@ -0,0 +1,6 @@
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
6
|
||||
Reference in New Issue
Block a user