Zobrazují se příspěvky se štítkemScripts. Zobrazit všechny příspěvky
Zobrazují se příspěvky se štítkemScripts. Zobrazit všechny příspěvky

sobota 28. března 2009

Automatické doplňování změn do SPEC souborů

Vytvořil jsem krátký scriptík sménem changelog na automatické doplnění changelogu do SPEC souborů při tvorbě rpm-balíčků. Používá se na rozbalený SPEC soubor s následující syntaxí:

$ changelog
Vypíše základní nápovědu

$ changelog balicek.spec
Do SPEC souboru dodá příslušný záznam. Je třeba, aby existoval a byl správně nastaven ~/.rpmmacros.

Je to prvni ze scriptu vetsi sady pro automatizovany preklad ze SRPMS.

Script je ulozen tady. Stáhněte, přiřaďte spouštěcí práva a nahrejte do /usr/local/bin.

pondělí 26. ledna 2009

Rozbalovač archivů

Přemýšlel jsem, jak si co nejvíce ulehčit práci s archivy. Je na milion různých archivátorů a stejný počet rozbalovačů. Rozhodl jsem se tedy, že než si pamatovat všechny příkazy na rozbalování (vím, že man man a RTFM ale tohle je můj blog:P )
Staci jej nahrat do /usr/local/bin, pridat prava ke spusteni a pak jen pri pokusu o rozbaleni staci napsat:
rozbal jmeno_souboru
popř.
rozbal soubor1 soubor2 soubor3
Není potřeba se tak starat, který rozbalovač rozbaluje rar, jaké má přepínače a jakou syntaxy příkaxu.

Vlastní script:


#!/bin/bash

for jmenoarchivu in $*
do
if [ -f "$jmenoarchivu" ] ; then
jmeno1=$(file -bi "$jmenoarchivu")
case $jmeno1 in
"application/x-bzip2") tar -xvjf "$jmenoarchivu" ;;
"application/x-gzip") tar -xvzf "$jmenoarchivu" ;;
"application/x-rar") unrar e "$jmenoarchivu" ;;
"application/rar") unrar e "$jmenoarchivu" ;;
"application/x-arj") unarj x "$jmenoarchivu" ;;
"application/arj") unarj x "$jmenoarchivu" ;;
"application/x-ace") unace x "$jmenoarchivu" ;;
"application/ace") unace x "$jmenoarchivu" ;;
"application/x-lha") lha e "$jmenoarchivu" ;;
"application/lha") lha e "$jmenoarchivu" ;;
"application/x-tar, POSIX (GNU)") tar -xvf "$jmenoarchivu" ;;
"application/x-tar") tar -xvf "$jmenoarchivu" ;;
"application/x-zip") unzip "$jmenoarchivu" ;;
"application/zip") unzip "$jmenoarchivu" ;;
*) echo "'$jmenoarchivu' nemuze byt rozbalen funkci rozbal" ;;
esac
else
echo "'$jmenoarchivu' neni mozne rozbalit programkem rozbal"
fi
done


Script je ke stažení na tomto linku.

neděle 14. září 2008

Fotoscript

Také máte digitální foťák a hromady fotek v počítači? Rádi byste těm fotkám dali řád, aby se nejmenovaly DSN_12345.JPG či P123456.JPG, ale aby jméno bylo odvozeno od chvíle, kdy byla fotka pořízena? Sám jsem tento problém řešil a nenašel jsem žádný vhodný program, který by byl plně uspokojoval mé potřeby. Chtěl jsem, aby se to jmenovalo podle vzoru:

Rok.Mesic.Den-Hodina.Minuta.Vterina - Jméno akce.jpg

třeba tedy:

2008.09.13-19.30.00 - Brno.jpg

Jak jsem napsal, žádný mi pořádně nevyhovoval, proto jsem napsal (za pomoci Filipa) script vlastní. Na začátku se zeptá script na jméno akce. Z EXIFu fotky vytáhne potřebná data (datum a cas) a vše poskládá do jména. Před vlastním přejmenováním testuje, jestli již neexistuje fotka se stejným jménem (při focení sekvencí se může stát, že v jedné vteřině se vyfotí az 3 fotky). Pokud najde takový soubor, přiřadí za vterinu -1 nebo -2, čímž se zamezí přejmenování fotek dřivějších. Neukazují se žádné informace o postupu, tedy kolik procent již je hotových, protožecelý script je velice rychlý.


Fotoscript je ke stažení z monocera, tedy odtud. Soubor fotoscript.sh jako root nakopírujte do /usr/local/bin a dejte mu práva ke spuštění ( příkazem chmod +x fotoscript.sh ). V případě problémů pište do diskuze nebo mě kontaktujte na jabber.


Script je možno volně šířit, měnit či upravovat.