summaryrefslogtreecommitdiff
path: root/kpov_judge
diff options
context:
space:
mode:
authormn3983@student.uni-lj.si <mn3983@student.uni-lj.si@5cf9fbd1-b2bc-434c-b4b7-e852f4f63414>2014-12-21 15:13:21 +0000
committermn3983@student.uni-lj.si <mn3983@student.uni-lj.si@5cf9fbd1-b2bc-434c-b4b7-e852f4f63414>2014-12-21 15:13:21 +0000
commit4a6c356926b11a627190e424f159cfc42dabc2ba (patch)
treeec28d1d033fc798f95d324fa7c003a15870a61fb /kpov_judge
parentd9cc1937abd5cffd5b4214ccaf4a8fab483fcb24 (diff)
lectures/fri_kpov/04/preparation: Write a solution for the tasks in instructions
git-svn-id: https://svn.lusy.fri.uni-lj.si/kpov-public-svn/kpov-public@110 5cf9fbd1-b2bc-434c-b4b7-e852f4f63414
Diffstat (limited to 'kpov_judge')
-rw-r--r--kpov_judge/solutions/copy_rename_20_files_tail_env/solution.sh40
1 files changed, 40 insertions, 0 deletions
diff --git a/kpov_judge/solutions/copy_rename_20_files_tail_env/solution.sh b/kpov_judge/solutions/copy_rename_20_files_tail_env/solution.sh
new file mode 100644
index 0000000..f04fefc
--- /dev/null
+++ b/kpov_judge/solutions/copy_rename_20_files_tail_env/solution.sh
@@ -0,0 +1,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 TEST | wc -l);"; expot 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 \ No newline at end of file