summaryrefslogtreecommitdiff
path: root/tasks/copy_rename_20_files_tail_env/solution/solution.sh
blob: b8e2d13706d983107fb7021d722a3b7fc8fc69d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash

# preimenuj vse datoteke tako, da zamenjaš minuse s podčrtaji
rename 'y/-/_/' *

# Napiši čim krajši ukaz, ki vse datoteke iz /home/user/mapa/mojimenik premakne v /home/user/novi
mv /home/user/mapa/mojimenik/* /home/user/novi/

# Napiši ukaz, ki s pomočjo ukaza grep v datoteko "mama.txt" izpiše vse navade (ne skrite) datoteke v trenutnem imeniku, ki vsebujejo niz "mama", v datoteko "napake.txt" pa izpiše vse morebitne napake (npr. to, da so nekateri objekti v trenutnem imeniku dejansko imeniki ali napačne simbolične povezave)
grep -l 'mama' * 1>mama.txt 2>napake.txt

# Napiši ukaz, ki bo 5s sledil vsebini /var/log/syslog. V primeru, da se v syslogu pojavi niz "zmeda", naj program izpiše "imam ga". Poleg tega naj program med sledenjem syslog-u odšteva od 5 do 1 (vsako sekundo naj se izpiše naslednja številka.
COUNT=$(grep 'zmeda' /var/log/syslog | wc -l );
END=$(date +%s%N | cut -b1-13);
for i in {5..1}; do
	END=$(($END + 1000));
	echo "$i";
	while [ $(date +%s%N | cut -b1-13) -lt $END ]; do
		COUN1=$(grep 'zmeda' /var/log/syslog | wc -l );
		if [ $COUN1 -gt $COUNT ]; then
			echo "imam ga";
			COUNT=$COUN1;
		fi
	done
done

# Nastavi okoljsko spremenljivko TEST, da bo imela isto vrednost kot okoljska spremenljivka USER + število okoljskih spremenljivk, ki v imenu ali vrednosti ne vsebujejo besede TEST. Primer: polz37
TEST="$USER$(printenv | grep -v TEST | wc -l)"; export TEST

# S pomočjo programa cURL shrani vsebino spletne strani www.google.com  v datoteko  z imenom website.txt
curl http://www.google.com > website.txt

# Napiši ukaz, ki bo število pojavitev značke <div> v datoteki website.txt dodal na konec te iste datoteke brez, da bi se ukaz zapisal v zgodovino ukazov "bash history"
grep -o "<[^/<>]*div[^>]*>" website.txt | wc -l >> website.txt; history -d $((HISTCMD-1))

# Napiši ukaz brez uporabe programa cron, kateri 5 minut po izvedbi izpiše vsebino imenika v katerem se trenutno nahajaš
$(sleep 300; ls) &

# Napiši najkrajši ukaz, ki s pomočjo Pythona zažene preprost (integriran) HTTP strežnik kateri streže datoteke iz imenika iz katerega je bil pognan na vratih 8000
python -m SimpleHTTPServer