Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

posted 2014-12-03 13:43:20 +0100

Mel byste to zkusit sam, byt to treba nebude elegantni nebo stoprocentně spravne. Kdyz si nechate poradit hned na zacatku, tak se nenaucite premyslet nad algoritmizaci problemu a az narazite na jiny problem, zase nebudete vedet, kudy do nej. Kdyz si naproti tomu napíšete svoje reseni, tak si z nej neco odnesete, i kdyz nebude dokonale. Klidne ho muzete poslat jako otázku k vyhodnocení, nebo i soukrome mailem v ramci konzultace s cvicicim.

(Cestinu doplnim, až budu na pocitaci.)

Mel byste to zkusit sam, byt to treba nebude elegantni nebo stoprocentně spravne. Kdyz si nechate poradit hned na zacatku, tak se nenaucite premyslet nad algoritmizaci problemu a az narazite na jiny problem, zase nebudete vedet, kudy do nej. Kdyz si naproti tomu napíšete svoje reseni, tak si z nej neco odnesete, i kdyz nebude dokonale. Klidne ho muzete poslat jako otázku k vyhodnocení, nebo i soukrome mailem v ramci konzultace s cvicicim.

(Cestinu doplnim, až budu na pocitaci.)


Vaše řešení cd /home/courses/BIPS1/public/schedule; ls -l . | awk 'NR>1{print "mv",$9}' | tee puvodni | awk '{print $2}' |sed s/.html/$(date +"-%a-%H%M").html\;/ > novy; printf '#!/bin/bash\n' > script; paste -d" " puvodni novy >> script; chmod u+x script; ./script; je "ohavné" proto, že:

  1. Jste zvolil krajně nevhodný zdroj dat. Říkali jsme si, že ls je fajn pro interaktivní práci, ale pro získávání dat, která se mají dále zpracovávat, se nehodí. Pokud chcete získávat metainformace o souborech, tak se podívejte na příkaz stat, který vám mimo jiné dovolí výstup zformátovat podle vašich potřeb.

  2. Úplně jste zapoměl na možnosti použít subshell (např. zpětné apostrofy).

Zkuste si to opravit na hezčí řešení, bude se vám to hodit pro získání praxe s použitými nástroji. Ale mějte na paměti, že řešíte něco jiného, než co po vás chce zadání: V zadání jde o to, že máte hromadu souborů, z nichž některé mají pro vás zajímavý obsah a jiné ne. Vy byste podle obsahu těch souborů měl vybrat ty zajímavé a opět podle obsahu jim přiřadit jména, která jsou více popisná než 1.html.

Mel Měl byste to zkusit sam, byt to treba sám, byť to třeba nebude elegantni elegantní nebo stoprocentně spravne. Kdyz si nechate správné. Když si necháte poradit hned na zacatku, začátku, tak se nenaucite premyslet nenaučíte přemýšlet nad algoritmizaci problemu algoritmizací problému a az narazite na jiny problem, až narazíte na jiný problém, zase nebudete vedet, vědět, kudy do nej. Kdyz něj. Když si naproti tomu napíšete svoje reseni, řešení, tak si z nej neco něj něco odnesete, i kdyz když nebude dokonale. Klidne dokonalé (nebo i když bude více či méně chybné). Klidně ho muzete můžete poslat jako otázku k vyhodnocení, nebo i soukrome soukromě mailem v ramci rámci konzultace s cvicicim.

(Cestinu doplnim, až budu na pocitaci.)vaším cvičícím.


Vaše řešení cd /home/courses/BIPS1/public/schedule; ls -l . | awk 'NR>1{print "mv",$9}' | tee puvodni | awk '{print $2}' |sed s/.html/$(date +"-%a-%H%M").html\;/ > novy; printf '#!/bin/bash\n' > script; paste -d" " puvodni novy >> script; chmod u+x script; ./script; je "ohavné" proto, že:

  1. Jste zvolil krajně nevhodný zdroj dat. Říkali jsme si, že ls je fajn pro interaktivní práci, ale pro získávání dat, která se mají dále zpracovávat, se nehodí. Pokud chcete získávat metainformace o souborech, tak se podívejte na příkaz stat, který vám mimo jiné dovolí výstup zformátovat podle vašich potřeb.

  2. Úplně jste zapoměl na možnosti použít subshell (např. zpětné apostrofy).

Zkuste si to opravit na hezčí řešení, bude se vám to hodit pro získání praxe s použitými nástroji. Ale mějte na paměti, že řešíte něco jiného, než co po vás chce zadání: V zadání jde o to, že máte hromadu souborů, z nichž některé mají pro vás zajímavý obsah a jiné ne. Vy byste podle obsahu těch souborů měl vybrat ty zajímavé a opět podle obsahu jim přiřadit jména, která jsou více popisná než 1.html.

Měl byste to zkusit sám, byť to třeba nebude elegantní nebo stoprocentně správné. Když si necháte poradit hned na začátku, tak se nenaučíte přemýšlet nad algoritmizací problému a až narazíte na jiný problém, zase nebudete vědět, kudy do něj. Když si naproti tomu napíšete svoje řešení, tak si z něj něco odnesete, i když nebude dokonalé (nebo i když bude více či méně chybné). Klidně ho můžete poslat jako otázku k vyhodnocení, nebo i soukromě mailem v rámci konzultace s vaším cvičícím.


Vaše řešení cd /home/courses/BIPS1/public/schedule; ls -l . | awk 'NR>1{print "mv",$9}' | tee puvodni | awk '{print $2}' |sed s/.html/$(date +"-%a-%H%M").html\;/ > novy; printf '#!/bin/bash\n' > script; paste -d" " puvodni novy >> script; chmod u+x script; ./script; je "ohavné" proto, že:

  1. Jste zvolil krajně nevhodný zdroj dat. Říkali jsme si, že ls je fajn pro interaktivní práci, ale pro získávání dat, která se mají dále zpracovávat, se nehodí. Pokud chcete získávat metainformace o souborech, tak se podívejte na příkaz stat, který vám mimo jiné dovolí výstup zformátovat podle vašich potřeb.

  2. Úplně jste zapoměl na možnosti možnost použít subshell (např. zpětné apostrofy).

Zkuste si to opravit na hezčí řešení, bude se vám to hodit pro získání praxe s použitými nástroji. Ale mějte na paměti, že řešíte něco jiného, než co po vás chce zadání: V zadání jde o to, že máte hromadu souborů, z nichž některé mají pro vás zajímavý obsah a jiné ne. Vy byste podle obsahu těch souborů měl vybrat ty zajímavé a opět podle obsahu jim přiřadit jména, která jsou více popisná než 1.html.

Měl byste to zkusit sám, byť to třeba nebude elegantní nebo stoprocentně správné. Když si necháte poradit hned na začátku, tak se nenaučíte přemýšlet nad algoritmizací problému a až narazíte na jiný problém, zase nebudete vědět, kudy do něj. Když si naproti tomu napíšete svoje řešení, tak si z něj něco odnesete, i když nebude dokonalé (nebo i když bude více či méně chybné). Klidně ho můžete poslat jako otázku k vyhodnocení, nebo i soukromě mailem v rámci konzultace s vaším cvičícím.


Vaše řešení cd /home/courses/BIPS1/public/schedule; ls -l . | awk 'NR>1{print "mv",$9}' | tee puvodni | awk '{print $2}' |sed s/.html/$(date +"-%a-%H%M").html\;/ > novy; printf '#!/bin/bash\n' > script; paste -d" " puvodni novy >> script; chmod u+x script; ./script; je "ohavné" proto, že:

  1. Jste zvolil krajně nevhodný zdroj dat. Říkali jsme si, že ls je fajn pro interaktivní práci, ale pro získávání dat, která se mají dále zpracovávat, se nehodí. Pokud chcete získávat metainformace o souborech, tak se podívejte na příkaz stat, který vám mimo jiné dovolí výstup zformátovat podle vašich potřeb.

  2. Úplně jste zapoměl na možnost použít subshell (např. zpětné apostrofy).

  3. Zrovna tak jste zapoměl na možnosti cyklu (příkaz for). (Já v první odpovědi taky. :-))

Zkuste si to opravit na hezčí řešení, bude se vám to hodit pro získání praxe s použitými nástroji. Ale mějte na paměti, že řešíte něco jiného, než co po vás chce zadání: V zadání jde o to, že máte hromadu souborů, z nichž některé mají pro vás zajímavý obsah a jiné ne. Vy byste podle obsahu těch souborů měl vybrat ty zajímavé a opět podle obsahu jim přiřadit jména, která jsou více popisná než 1.html.