ПОС/Лаб 2 2021 — разлика између измена

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
(+l2 2021)
 
м (+data-solutions)
 
(Нису приказане 3 међуизмене 2 корисника)
Ред 1: Ред 1:
{{tocright}}
{{tocright}}
Лаб 2 је у школској години 2020/21 рађен у '''другом''' термину вежби, што је одсуство од досадашњег шаблона услед пандемије. Приметно је да су задаци знатно једноставнији од другог лаба из прошлих година.
Лаб 2 је у школској години 2020/21 рађен у '''другом''' термину вежби, што је одсуство од досадашњег шаблона услед пандемије. Приметно је да су задаци знатно једноставнији од другог лаба из прошлих година.
<div class="unhide-spoilers"></div>== Група 1 ==
{{решења}}
 
== Група 1 ==
=== Задатак 1 ===
=== Задатак 1 ===
==== Поставка ====
==== Поставка ====
Ред 7: Ред 9:


==== Решење ====
==== Решење ====
<syntaxhighlight lang="bash" class="spoiler">
<syntaxhighlight lang="bash" class="spoiler" data-solution="plain">
#!/bin/bash
#!/bin/bash


Ред 18: Ред 20:


==== Решење ====
==== Решење ====
<syntaxhighlight lang="bash" class="spoiler">
<syntaxhighlight lang="bash" class="spoiler" data-solution="plain">
ps -eo pid --sort pcpu | tail -1
ps -eo pid --sort pcpu |
    tail -1


# rešenje ako vas mrzi da čitate manual
# rešenje ako vas mrzi da čitate manual
ps aux | tr -s ' ' ' ' | sort -nrk3 | cut -d' ' -f2 | head -1
ps aux |
    tr -s ' ' ' ' |
    sort -nrk3 |
    cut -d' ' -f2 |
    head -1
</syntaxhighlight>
</syntaxhighlight>


Ред 30: Ред 37:


==== Решење ====
==== Решење ====
<syntaxhighlight lang="bash" class="spoiler">
<syntaxhighlight lang="bash" class="spoiler" data-solution="plain">
#!/bin/bash
#!/bin/bash


promena=0
promena=0
while IFS= read -r file; do
while IFS= read -r file; do
[ -z "$(chmod -c u+x "$file")" ] || let promena++
    [ -z "$(chmod -c u+x "$file")" ] || let promena++
done < list.txt
done < list.txt



Тренутна верзија на датум 30. јун 2021. у 14:22

Лаб 2 је у школској години 2020/21 рађен у другом термину вежби, што је одсуство од досадашњег шаблона услед пандемије. Приметно је да су задаци знатно једноставнији од другог лаба из прошлих година.

  • За питања са више одговора, тачни одговори су подебљани и уоквирени
  • За питања за које се одговори уносе, тачни одговори су подвучени и сакривени, тако да се прикажу када изаберете тај текст (пример: овако)
  • Притисните лево дугме испод за сакривање и откривање свих одговора, или десно дугме за укључивање и искључивање интерактивног режима:

Група 1

Задатак 1

Поставка

(2п) Написати скрипту која исписује име тренутно улогованог корисника.

Решење

#!/bin/bash

echo $USER

Задатак 2

Поставка

(5п) Написати команде које као резултат приказују идентификатор процеса који највише користи процесор.

Решење

ps -eo pid --sort pcpu |
    tail -1

# rešenje ako vas mrzi da čitate manual
ps aux |
    tr -s ' ' ' ' |
    sort -nrk3 |
    cut -d' ' -f2 |
    head -1

Задатак 3

Поставка

(7п) Написати скрипту која власнику додељује право извршавања уколико их нема за фајлове чије се путање налазе записане у фајлу list.txt. Овај фајл у сваком реду садржи путању до једног фајла. Скрипта на крају треба да испише колико је укупно извршила промена права приступа. Сматрати да се фајл list.txt налази у истом директоријуму као и скрипта.

Решење

#!/bin/bash

promena=0
while IFS= read -r file; do
    [ -z "$(chmod -c u+x "$file")" ] || let promena++
done < list.txt

echo "$promena"