abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
včera 16:44 | Zajímavý software

Příspěvek na blogu Ubuntu představuje etrace, tj. víceúčelový nástroj pro profilování snap balíčků aneb nástroj pro vyhledávání míst v snap balíčcích, která jsou vhodná pro optimalizaci.

Ladislav Hagara | Komentářů: 0
včera 16:11 | IT novinky

Příspěvek na blogu Microsoftu informuje o novince ve WSL (Windows Subsystem pro Linux) ve Windows 10 Insider Preview Build 20246. Linuxové distribuce lze jednoduše instalovat příkazem "wsl --install -d distribuce". Bez "-d distribuce" je nainstalováno Ubuntu. Seznam podporovaných distribucí lze vypsat příkazem "wsl --list --online".

Ladislav Hagara | Komentářů: 23
včera 13:33 | Bezpečnostní upozornění

Samba, svobodná implementace síťového protokolu SMB/CIFS, byla vydána ve verzích 4.13.1, 4.12.9 a 4.11.15. Řešeny jsou 3 bezpečnostní chyby: CVE-2020-14318, CVE-2020-14323 a CVE-2020-14383.

Ladislav Hagara | Komentářů: 0
včera 09:00 | Nová verze

Byla vydána nová stabilní verze 3.4.0 analyzátoru síťového provozu Wireshark (Wikipedie). Přehled novinek v poznámkách k vydání. Zaujme možnost zobrazování paketů ve formátu známém z RFC a učebnic (Packet Diagram, ukázka mp4).

Ladislav Hagara | Komentářů: 1
včera 08:00 | Zajímavý článek

Drew DeVault v reakci na nedávný incident s odstraněním youtube-dl z GitHubu kvůli požadavku RIAA podle DMCA argumentuje, že e-mailové konference jsou vůči takovému postupu odolnější, jelikož každý účastník konference disponuje kopií.

Fluttershy, yay! | Komentářů: 15
včera 07:00 | Nová verze

Společnost Red Hat představila Red Hat Enterprise Linux 8.3. Vedle nových vlastností a oprav chyb přinese také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
29.10. 23:16 | Zajímavý projekt

Začal vycházet nový online magazín Branch, který se snaží přispět k diskusi o udržitelnosti IT technologií a využití Internetu k ochraně klimatu. Obsah je publikován pod licencí Creative Commons BY 4.0. V prvním čísle se lze dočíst například o udržitelném webdesignu, nebo vztahu mezi AI a udržitelností.

milosk | Komentářů: 12
29.10. 19:33 | Komunita

Pygame (Wikipedie), tj. multiplatformní sada modulů jazyka Python určená k tvorbě počítačových her, slaví 20 let. Při této příležitosti byla vydána verze 2.0.

Ladislav Hagara | Komentářů: 0
29.10. 18:44 | IT novinky

Společnost SiFive představila (YouTube) Mini-ITX desku s RISC-V procesorem SiFive Freedom U740 HiFive Unmatched. Její cena je 665 dolarů.

Ladislav Hagara | Komentářů: 1
29.10. 15:11 | Komunita

Dnes je druhý den konference eBPF Summit 2020. Přednášky lze od 17:00 sledovat na YouTube nebo Zoom. Na Youtube je ke zhlédnutí také záznam ze včerejšího dne.

Ladislav Hagara | Komentářů: 0
Které aspekty uživatelského rozhraní textového editoru považujete za důležité?
 (71%)
 (36%)
 (33%)
 (18%)
 (24%)
 (15%)
Celkem 245 hlasů
 Komentářů: 21, poslední 23.10. 17:33
Rozcestník

Dotaz: bash: porovnanie des. cisel

8.3.2005 15:14 oron | skóre: 27
bash: porovnanie des. cisel
Přečteno: 633×
a=2.56
b=3.89

potrebujem spravit podmienku
if $a < $b; then
  echo "a < b"
fi

prosim vas ako ? najeko sa stale mocem dokola a nejde mi to ...?
dik

Odpovědi

8.3.2005 15:19 Tomík Pařízek
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
man bash:

"-gt" > "-lt" <

atd...
8.3.2005 15:28 oron | skóre: 27
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
porovnat cele cisla samozrejme viem,
problem mam s des.cislom .... ?
8.3.2005 15:32 Yeti
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Bash neumí porovnávat desetinná čísla. Nehledě na to, že < je v shellu přesměrování. Použij zsh, awk, perl, ...
8.3.2005 15:39 oron | skóre: 27
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
ano ... viem ze bash nevie robit s des. cislom ... skusam to pomocou bc, ale toto sa mi zda trocha divoke
if [ $(bc << EOF
$a < $b
EOF
) -eq 1 ]; then
   echo "a < b"
else
   echo "a > b" 
fi

9.3.2005 08:23 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
hmm, a co je na tom divného. Když holt nechceš použít něco pořádného, tak se nediv. Krom toho tvrďáci by použili dc.
[ $(dc <<<"[1pq]sa$a $b>a0p") -eq 1 ] &&
  echo "a < b" ||
  echo "a > b"
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
9.3.2005 09:38 Yeti
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Tvrďák použije sort ;-)
function rnle() {
  test `echo -e "$1\\n$2" | sort -g | head -n 1` = $1
}
function rnge() {
  test `echo -e "$1\\n$2" | sort -g | head -n 1` = $2
}
9.3.2005 17:20 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
No mě to přijde proti dc moc easy, ale musím uznat, že je to drsnější co do plýtvání systémovými prostředky a na to mě moc neužije. Krom toho jsem se po dlouhé době donutil přečíst man dc a možnosti tohoto nástroje mě nadchly, takže odpříště všechno nepíšu v bashi, ale v dc ;-)
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
9.3.2005 18:22 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
A vůbec. Ještě jednou se snížím k bashi.
rnlt() {
  if [ ${1:0:1} == '-' -a ${2:0:1} == '-' ]
  then
    rngt ${1:1} ${2:1}
    return $?
  fi
  IFS='.'
  a=($1)
  b=($2)
  [ ${a[0]} -lt ${b[0]} ] && return 0
  [ ${a[0]} -gt ${b[0]} ] && return 1
  i=0
  while :
  do
    [ -z "${a[1]:$i:1}" -a -n "${b[1]:$i:1}" ] && return 0
    [ -z "${b[1]:$i:1}" ] && return 1
    [ ${a[1]:$i:1} -lt ${b[1]:$i:1} ] && return 0
    let i++
  done
}
rngt() {
  if [ ${1:0:1} == '-' -a ${2:0:1} == '-' ]
  then
    rnlt ${1:1} ${2:1}
    return $?
  fi
  IFS='.'
  a=($1)
  b=($2)
  [ ${a[0]} -gt ${b[0]} ] && return 0
  [ ${a[0]} -lt ${b[0]} ] && return 1
  i=0
  while :
  do
    [ -n "${a[1]:$i:1}" -a -z "${b[1]:$i:1}" ] && return 0
    [ -z "${a[1]:$i:1}" ] && return 1
    [ ${a[1]:$i:1} -gt ${b[1]:$i:1} ] && return 0
    let i++
  done
}
Teda zatím to není úplně blbuvzdorné a používá se to.
rnlt $a $b && echo 'a < b' || echo 'a >= b'
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
9.3.2005 19:04 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Dělám snad někde chybu -- kromě toho, že neparsuji semilogaritmický tvar -- když to porovnávám jen
function rnle() {
  [ ${1/.*} -lt ${2/.*} ] && return 0
  [ ${1/.*} -gt ${2/.*} ] && return 1
  if [ ${1:0:1} = '-' ]; then
    [ ! ${1#*.}0 \> ${2#*.}0 ]
  else
    [ ! ${2#*.}0 \> ${1#*.}0 ]
  fi
}
9.3.2005 19:36 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Děláš:
$ rnle 3.45 3.345 && echo OK
OK
$ rnle 3 3.345 && echo OK
$
Nicméně, když na to teď s odstupem koukám, tak je to fakt hnus, co takhle:
rnle() {
  IFS='.'
  a=($1)
  b=($2)
  [ $a -lt $b ] && return 0
  [ $a -gt $b ] && return 1
  if [ ${a:0:1} == '-' ]
  then
    a[0]=${b[1]}
    b=${a[1]}
  else
    a=${a[1]}
    b=${b[1]}
  fi
  for((i=${#a};i<${#b};i++)); do a=${a}0; done
  for((i=${#b};i<${#a};i++)); do b=${b}0; done
  [ $a -ge $b ] && return 1
  return 0
}
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
9.3.2005 19:56 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
V tom problém není, protože > porovnává lexikograficky. Jen jsem zaměnil větve té podmínky
function rnle() {
  [ ${1/.*} -lt ${2/.*} ] && return 0
  [ ${1/.*} -gt ${2/.*} ] && return 1
  if [ ${1:0:1} = '-' ]; then
    [ ! ${2#*.}0 \> ${1#*.}0 ]
  else
    [ ! ${1#*.}0 \> ${2#*.}0 ]
  fi
}
9.3.2005 20:18 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Musím uznat, že je to elegantní
rnlt() {
  if [ ${1/.*} -ne ${2/.*} ]
  then [ ${1/.*} -lt ${2/.*} ]
  elif [ ${1:0:1} = '-' ]
  then [ ${1#*.}0 \> ${2#*.}0 ]
  else [ ${2#*.}0 \> ${1#*.}0 ]
fi
}
Tak dnešní kontest jsi vyhrál ;-)
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
9.3.2005 19:36 Ja
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Ja to mam podobne, i kdyz asi trochu prasacky ...
function rnlt()
{
        celacast_1=`echo $1|cut -d. -f 1`;
        descast_1=`echo $1|cut -d. -f 2`;
        celacast_2=`echo $2|cut -d. -f 1`;
        descast_2=`echo $2|cut -d. -f 2`;
        if [ $celacast_1 -eq $celacast_2 ]
        then
                if [ $celacast_1 -lt 0 ]
                then
                        descast_1=`expr -1 \* $descast_1`;
                        descast_2=`expr -1 \* $descast_2`;
                fi
                [ $descast_1 -lt $descast_2 ]&& return 0;
                return 1;
        else
                [ $celacast_1 -lt $celacast_2 ]&& return 0;
                return 1;
        fi
}
9.3.2005 19:46 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
Stejnej problém jako Yeti, nestejně dlouhé desetiné části selžou. Nicméně, naučit se používat konstrukce typu ${variable#pattern}, ${variable%pattern} a používat IFS by ušetřilo hodně zbytečných subprocesů.
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.
9.3.2005 19:51 Hynek (Pichi) Vychodil | skóre: 43 | blog: Pichi | Brno
Rozbalit Rozbalit vše Re: bash: porovnanie des. cisel
A to nemluvím o těch zbytečnejch echo.
XML je zbytečný, pomalý, nešikovný balast, znovu vynalézané kolo a ještě ke všemu šišaté, těžké a kýčovitě pomalované.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.