Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 1 odgovor
  • 16.953 pregleda

Najnovija ↓

zna li mi ko ovo pojasniti 25.05.2015. u 23:11 · pre 139 meseci #1
Zna li mi ko pojasniti ovaj bash?
#!/bin/bash

ats() {
[ "$1" lt
256 ] || return 1
printf "\\$(printf '%03o' "$1")"
}

o=(13 01 13 5...13 10)

for i in ${o[*]}
do
ats $i
done
Re: zna li mi ko ovo pojasniti 26.05.2015. u 09:40 · pre 139 meseci #2
Nemam trenutno Linux, pa da probam napamet:

Prvo se definiše funkcija ats
Ova funkcija ispisuje ascii znak koji joj je poslat kao prvi parametar.

linija [ "$1" lt 256 ] || return 1
je logički izraz koji se računa na sledeći način:
ako je prvi parametar funkcije ats manji od 256, izraz u zagradama je tačan, pa pošto iza njega ide OR, izraz "return 1" se ne računa. Kada bi prvi parametar bio veći ili jednak 256, na toj liniji bi se izašlo iz funkcije ats

U programu se funkcija ats poziva za vrednosti parametra, redom, 13, 1, 13, 5, 6, 7, 8, 9, 10, 11, 12, 13, 10

pa je izlaz iz programa ispis na standardni izlaz sekvence:
\CR \SOH \CR \ENQ \ACK \BELL \BS \TAB \LF \VT \FF \CR \LF

ili, oktalno:

\015\001\015\005\006\007\010\011\012\013\014\015\012
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme