stando, neco mi uniklo, muj browser je spatny, nebo je to jen spatne copy/paste? :
...cut...
shopt -s histappend
HISTFILESIZE=20000
HISTSIZE=5000
HISTCONTROL=ignoreboth
export HISTFILESIZE HISTSIZE HISTCONTROL
Dále musíme zajistit, aby se tento příkaz vykonal vždy při
inicializaci ? virtuální terminály spouštíme s volbou
?Použít jako přihlašovací shell?, su používáme pouze
s volbou -l (může se lišit podle distribuce).
...cut...
Názory k článku
Drobnosti ze shellového zápisníku (1)
nepochopil - chybka?
celé vláknoRe: nepochopil - chybka?
celé vláknoTen příkaz vypadá v pořádku - překopíroval jsem ho do shellu a vykonal bez problémů. Ovšem ten text pod tím je rozlámaný na řádky - to samozřejmě u příkazu může vadit.
Druhý problém vidím v grafických znacích z ISO-8859-15 (používám je v článcích podle typografických pravidel) - některé prohlížeče je interpretují jako otazníky. Jiné je interpretují sice správně, ale při cut/paste se zkomolí.
Jen tak daal
celé vláknoParada, konecne neco praktickeho pro bezneho uzivatele jako jsem ja :-) (BFU) Tesim se na dalsi dily. Ty posledni priklady z konverzi a prejmenovanim mi vytrhly trn z paty, protoze to resim casto pri konverzi z latexu do HTML, kdy nejsem spopkojen s kvalitou grafickeho prevadece v HEVEA a tak "rucne" cosi dopatlavam do kodu dle obrazku ktere mam v lepsi podobe ....(zatim jsem to delal pochopitelne blbe - rucne :-)
skriptiky
celé vláknoChtel bych pouze upozornit ctenare, ze v clanku hojne pouzivana konstrukce for i in * si vylame zuby na adresarich obsahujicich vetsi mnostvi souboru viz zname omezeni vetsiny shellu ze * expanduje na prikazovou radku a dojde k preteceni delky cmdline. ( 2048 byte ) vetsinou.
Re: skriptiky
celé vláknoDalsi problem je pokud nazev souboru obsahuje mezeru, pak je tento nazev bran jako dva zaznamy pro for cyklus, napr misto convert obrazek s mezerou.tif se zavola convert obrazek pak convert s a nakonec convert mezerou.tif ;)
Re: skriptiky
celé vláknoTo vyresi uzavreni do uvozovek ne?
Re: skriptiky
celé vláknoNo samozrejme ze to uvozovky nevyresi, pokud ten nazev nacitas. Ale zato to vyresi nastaveni promene
IFS=$' \t\n' na IFS=$'\n' ... coz rika ze jediny rozdelovac je novy radek.
A k tomu omezeni QUOTY .. zjistil jsem ze kdyz to nejdriv dam do souboru ls > SOUBOR a pak pouziji
for i in `cat SOUBOR` tak je to OK
Re: skriptiky (jména s mezerou)
celé vláknoVšechny for konstrukce, které byly použity v článku, by měly vzít jakákoliv jména souborů. U některých jsem to testoval. Proto jsou uzavřeny do uvozovek. Pro zpětné načítání výpisu lze použít konstrukci "\"$i\"", ale ta už selže na jméno obsahující uvozovky.
Re: skriptiky
celé vláknoMel jsem za to, ze interpret sam vklada pred mezeru zpetne lomitko.
Uvodzovky a apostrofy
celé vláknoCitujem:
"Potřebujeme-li jej, použijeme buď zápis '\'' nebo '"'"' (tedy opustíme režim apostrofů, napíšeme apostrof a opět se vrátíme do režimu apostrofů)."
Neviem ktory konkretny shell mal autor na mysli, ale podla mna sa rezim apostrofov a napisanie uvodzovky robi takto:
'bar'"'"'foo'
Skusal som to v bash, sh, ash a vsade to vypisalo bar'foo. Ine shelly som neskusal, myslim vsak, zeby sa spravali rovnako.
Inkriminovana konstrukcia '"'"' je IMHO chybna. Co sa tyka '\'', to funguje samozrejeme bez problemov.
Re: Uvodzovky a apostrofy (upřesnění formulace)
celé vláknoByl jsem poněkud nepřesný. Pokud bych chtěl být přesný, věta měla znít:
Potřebujeme-li napsat apostrof uvnitř apostrofů, použijeme buď zápis '\'' nebo '"'"'. Takto jsem větu mínil.
stvromiestne cisla v menach suborov
celé vláknoMne sa zda na vytvaranie mien so 4-miestnymi cislami lepsi awk. Zial ked som sa teraz nad tym brutalne zamyslel, viem to momentalne spravit iba vtedy, ak viem nejako urcit, kde je v mene suboru cislo, co chcem menit. Takze napr. pre mena suborov typu subor_12.jpg by mohlo fungovat: (netestovane, snad spravne;)
for i in *.jpg; do
mv "$i "`echo $i | awk 'BEGIN {FS="[_.]+"; } { printf "%s_%04d.%s", $1, $2, $3 ;}'`";
done
Prelozene do ludskej reci: pre vsetky subory *.jpg premenuj aktualny subor na subor, ktoreho meno vypluje awk. Awk pracuje nasledovne: Na zaciatku (BEGIN) nastava oddelovas poli (filed separator FS) na kurzor alebo bodku. To sposobi, ze meno suboru "subor_12.jpg" bude rozdeleny na 3 casti: 1. "subor", 2. "12", 3. "jpg". tieto tri casti vypis ako "<retazec>_<4-miestne cislo>.<retazec>".
Cele to ma tu vyhodu, ze si nemusim pamatat haluzny regexp ;). Ale chce to trosku prax s awk (awk Rulezzz! :-)) )

