Byla vydána nová major verze 9.0 softwaru pro správu elektronických knih Calibre (Wikipedie). Přehled novinek v poznámkách k vydání. Vypíchnuta je podpora AI.
Wasmer byl vydán ve verzi 7.0. Jedná se o běhové prostředí pro programy ve WebAssembly. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.
V reakci na nepopulární plán Microsoftu ještě více ve Windows prohloubit integraci umělé inteligence Copilot, Opera na sociální síti 𝕏 oznámila, že připravuje nativní linuxovou verzi prohlížeče Opera GX. Jedná se o internetový prohlížeč zaměřený pro hráče, přičemž obsahuje všechny základní funkce běžného prohlížeče Opera. Kromě integrace sociálních sítí prohlížeč například disponuje 'omezovačem', který umožňuje uživatelům omezit využití sítě, procesoru a paměti prohlížečem, aby se tak šetřily systémové zdroje pro jinou aktivitu.
NVIDIA vydala nativního klienta své cloudové herní služby GeForce NOW pro Linux. Zatím v beta verzi.
Open Gaming Collective (OGC) si klade za cíl sdružit všechny klíčové projekty v oblasti linuxového hraní počítačových her. Zakládajícími členy jsou Universal Blue a Bazzite, ASUS Linux, ShadowBlip, PikaOS a Fyra Labs. Strategickými partnery a klíčovými přispěvateli ChimeraOS, Nobara, Playtron a další. Cílem je centralizovat úsilí, takže namísto toho, aby každá distribuce udržovala samostatné opravy systému a podporu hardwaru na
… více »V kryptografické knihovně OpenSSL bylo nalezeno 12 zranitelností. Opraveny jsou v upstream verzích OpenSSL 3.6.1, 3.5.5, 3.4.4, 3.3.6 a 3.0.19. Zranitelnosti objevila společnost AISLE pomocí svého autonomního analyzátoru.
Desktopové prostředí Xfce bude mít vlastní kompozitor pro Wayland s názvem xfwl4. V programovacím jazyce Rust s využitím stavebních bloků z projektu Smithay jej napíše Brian Tarricone. Úprava stávajícího xfwm4 tak, aby paralelně podporoval X11 i Wayland, se ukázala jako špatná cesta.
Desktopové prostředí KDE Plasma 6.8 poběží už pouze nad Waylandem. Vývojáři, kteří s rozhodnutím nesouhlasí, vytvořili fork KDE Plasma s názvem SonicDE (Sonic Desktop Environment) s cílem zachovat a vylepšovat podporu X11.
Byla vydána nová stabilní verze 7.8 dnes již jedenáctiletého webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 144. Přehled novinek i s náhledy v příspěvku na blogu.
GNU gettext (Wikipedie), tj. sada nástrojů pro psaní vícejazyčných programů, dospěl do verze 1.0. Po více než 30 letech vývoje. Přehled novinek v souboru NEWS.
$touch Ahoj\ svete.. Nebo pokud mas v adresar soubory "a", "a a", "a b". Pri doplnovani se doplni pouze na a. Mezeru je opet treba zadat escapovane. Zkuste si to je to dobre videt.
Proste mezera je v cli peknej opruz.
ls -l "a[SPACE][TAB] pak doplni zbytek spravne bez "\"
Jeste predem trochu k FATu. FAT 8+3 pouzival standardne tusim velky pismena pri zapisu jmena na disk, jinak uzivatel nazvy zadava case-insensitive. Ve verzi vfat (delsi jmena nez 8+3) bylo mozna tusim zapisovat velka i mala pismena ve jmene souboru, ale Windows/DOS to nerozlisoval, cili "A" bylo stejny jako "a". Nevim, jak presne se chovaly programy ve Windows, ale je fakt, ze linux odmita prejmenovat soubor "A" na "a" na pripojenym vfat oddile, protoze je to proste stejny soubor, takze pokud chces opravdu delat upper-case na lower-case, musi se to resit pres temp soubor. Osobne bych ale velky pismena nechaval, aspon na linuxu mi to vyhovuje.
A jeste nez zacnu, tak ti musim Tomiku napsat, ze ses fakt dobrej, ze jsi takovouhle funkcnost napsal v pythonu a objektove. Tohle je skutecny uznani, ne ironie.
Jeste jemny rejpnuti/ironie: ted uz musis v pythonu napsat jenom vlastni OS, pod kterym bys ten svuj skript spoustel
A ted vazne. Zda se mi, ze na zadani odstranit diakritiku, písmena změnit na malá, nepohodlné znaky nahradit podtržítkem. Poté se ještě vyhodí nepotřebné znaky '_' a '-' kolem teček, více znaků '_' nebo '-' nahradí jenom jedním a sekvence '-' a '_' se nahradí jenom jednou pomlčkou. jsi pouzil skutecne zbytecne silnej jazyk a napsal jsi opravdu drsnej program. Protoze vyznavam boha roury pipe, tak bych osobne na to vyuzil spis moznosti textovych a souborovych utilit, pripadne bych to napsal v perlu, asi nejak takhle (varovani pro pripadne testery-skripty jsem nezkousel, mozna budou potrebovat doladit!!!). Objekty se mi tady proste moc nezdaji. Tak jestli nekdo bude prahnout po python-free reseni, tak prosim ...
#!/bin/bash
if [ $# -eq 0 ];then
echo "Usage: $0 directory ..."
else
while [ $# -gt 0 ];do
if [ -d "$1" ];then
find "$1" -mindepth 1 -maxdepth 1 | while read name;do
nname="$( echo "$name" | tr 'ĄąÁÂĂÄáâăäĆÇČćçčĎĐďđÉĘËĚéęëěÍÎíłľĹĺŃŇńňÓÔŐÖóôőöŔŕŘřŚŠŞśšşŤťŢţŮÚŰÜůúűüÝýŹŽŻźžż' 'AaAAAAaaaaCCCcccDDddEEEEeeeeIIiiLLllLlNNnnOOOOooooRrRrSSSsssTtTtUUUUuuuuYyZZZzzztszTSZ' | tr 'A-Z' 'a-z' | tr -cs '-0-9a-z_.' '_' | tr -s '-_' '-_' | sed 's/^[-_]\+//;s/[-_]*-[-_]*/-/g;s/[-_]\+\.\/./g;s/\.[-_]\+/./g;' )"
if [ "$name" != "$nname" ];then mv -v "$name" "$nname";fi
find "$1" -mindepth 1 -maxdepth 1 -type d -print0 | xargs -0r "$0"
done
shift
else
echo "Directory $1 does not exist"
fi
done
fi
#!/usr/bin/perl
if (scalar(@ARGV)==0) {
print "Usage: $0 directory ...\n";
} else {
@dirs=@ARGV;
while ($dir=shift @dirs) {
if (-d $dir) {
if (opendir D,"$dir") {
@names=readdir D;
closedir D;
for ($i=0;$i<scalar(@names);$i++) {
push @dirs,"$dir/$names[$i]" if (-d "$dir/$names[$i]);
$nname=$names[$i];
$nname=~tr/ĄąÁÂĂÄáâăäĆÇČćçčĎĐďđÉĘËĚéęëěÍÎíłľĹĺŃŇńňÓÔŐÖóôőöŔŕŘřŚŠŞśšşŤťŢţŮÚŰÜůúűüÝýŹŽŻźžż\x9D\x9A\x9E\x8D\x8A\x8E/AaAAAAaaaaCCCcccDDddEEEEeeeeIIiiLLllLlNNnnOOOOooooRrRrSSSsssTtTtUUUUuuuuYyZZZzzztszTSZ/;
$nname=~tr/A-Z/a-z/;
$nname=~tr/-0-9a-z_./_/cs;
$nname=~tr/-_/-_/s;
$nname=~s/^[-_]+//;
$nname=~s/[-_]*-[-_]*/_/g;
$nname=~s/[-_]+\././g;
$nname=~s/\.[-_]+/./g;
if ($nname ne $names[$i]) { print STDERR "Error in rename: $!\n" unless rename "$dir/$names[$i]","$dir/$nname"; }
}
} else {
print STDERR "Unable to open directory $dir: $!\n";
}
} else {
print STDERR "Directory $dir does not exist\n";
}
}
}
P.S.: Jeste ze fungujou tagy pre, znacky code fungujou nejak podivne a po prvni prazdne radce se asi sami vypnou.
. Tohle bych vymyslel cely den.
Jinak ale je pravda, ze spousta lidi neobjevi ty skvely moznosti linuxovych utilitek a pak jim windows cmd pripada stejne silnej jako bash+gnu nastroje. Bohuzel pravda je jina a cmd samo o sobe i s tou chabou vybavickou pseudo nastroju ve windows neumi vubec nic oproti bashi s armadou find-utils, text-utils, file-utils atd (dnes tusim uz vsechno v baliku core-utils). Spousta lidi napr pouziva grep jenom na hledani slova a vyuziti regexpu se vyhybaji, stejne tak sed je silnej nastroj na editaci text streamu. No a kouzla s rourama a sub-shellama jsou pak uz docela sileny. Ale i tak to neni vsechno a existuji dalsi magicky triky, o kterych ani ja nemam paru.
BTW: Ted jsem si vsimnul, ze to v tom bashi rozhodilo cesky znaky pro Windows, tj. , puvodne to maji byt znaky s hodnotama 0x9D 0x9A 0x9E 0x8D 0x8A 0x8E, jak je uvedeno v perl skriptu, ale treba taky nevim, jak bych nacpal do bashe znaky pomoci nejaky hexa sekvence, jako napr. v perlu pomoci \x9D atd. Aha, koukam, to neni rozhozeny - ono je to asi jenom v UTF8 a tam ty znaky nemaji zadnej vyznam, tak je tam ve ctverecku pod sebou napsano "00" a "9D", "00" a "9A" atd. No, tady je videt, ze M$ zase neco podelal a misto aby pouzili ISO-8859-2, tak vymysleli nejakou ptakovinu, ktera je az na tehle sest pismen stejne s ISO, ale znaky ť, š a č jsou jiny.
K tomu bashu: cely ten brutal riadok by siel spravit jednym sedom, a usetrit 10 procesov spustanych pre kazdy subor, co by bolo sakra poznat, pri premenovavani velkeho stromu suborov.Jojo, to mas recht. V tomhle pohledu bude urcite ten perl i ten python privetivejsi. Jinak ten "y" (alias tr) v sedu by se pouzit uricte dal, zalezi jaky akceptuje parametry, ale pokud by umoznoval "c" (complement) a "s" (squeeze-repeats), a kdyby sed bral sekvence \x9D, tak by ten radek mohl snad vypadat nejak takhle
nname="$( echo "$name" | sed 'y/ĄąÁÂĂÄáâăäĆÇČćçčĎĐďđÉĘËĚéęëěÍÎíłľĹĺŃŇńňÓÔŐÖóôőöŔŕŘřŚŠŞśšşŤťŢţŮÚŰÜůúűüÝýŹŽŻźžż\x9D\x9A\x9E\x8D\x8A\x8E/AaAAAAaaaaCCCcccDDddEEEEeeeeIIiiLLllLlNNnnOOOOooooRrRrSSSsssTtTtUUUUuuuuYyZZZzzztszTSZ/;y/A-Z/a-z/;y/-0-9a-z_./_/cs;y/-_/-_/s;s/^[-_]\+//;s/[-_]*-[-_]*/-/g;s/[-_]\+\.\/./g;s/\.[-_]\+/./g;' )"
Tak ted jsem to overoval a zda se, ze muj sed (GNU sed version 4.1.5) umi \x9D, ale bohuzel neumi y/// s ruznyma dylkama a navic tudiz nelze zapsat nahrazeni complement seznamu a navic y/// nebere parametry, cili selhava prikaz y/-0-9a-z_./_/cs"strings for `y' command are different lengths" a po smazani pak selhava i
y/-_/-_/s;"extra characters after command". Takze na jednoduchy zmeny to y/// v sedu staci, na slozitejsi je lepsi perl nebo tr.
Na druhej strane, to rekurentne volanie sa mi fakt paci a asi ho tiez zacnem pouzivatKazdej den se neco novyho ucime
A nikdy neumime vsechno
BTW: Nejsem si ted vedom, ze bych ho ja sam nejak casto vyuzival, ale tady mi zrovna hoodne pomohlo
, tak
y/-0-9a-z_./_/csby slo spravit prikazom (pri ERE, ale to je jedno, je to iba kvoli nazornosti)
s/[^-0-9a-z_.]+/_/ga
y/-_/-_/sby slo spravit cez
s/([-_])\1*/\1/g(BTW prikaz
tr -s '-_' '-_' mi nefacha a musim pouzit tr -s -- '-_' '-_' ale moze to byt verziou tr)
Ja jsem akorat nacpal kompletne vsechny, i ty nepouzivane v CJ (vetsinou totiz problem delaji prave ty cizi znaky), ale mohl bych vypsat pouze CZ. Jinak by me taky zajimalo, jak si s tim prevodem do utf poradi python, kdyz tam bude nejakej znak mimo tu prednastavenou kodovou stranku (napr. bude na woknech a nastavis cp1250 a pak pouzijes nejaky pismeno, ktery bude iso). Napr. iconv na tom spadne.
cmp1(renamer, u'ůěščřžýáíé', u'uescrzyaie') cmp1(renamer, u'úďťňó', u'udtno') cmp1(renamer, u'ĚŠČŘŽÝÁÍÉ', u'ESCRZYAIE') cmp1(renamer, u'ÚĎŤŇÓ', u'UDTNO')ad 3) hmmm, nevim, me ten bash i perl skript pripada jednodussi, zadny objekty , proste za sebou par tr a s prikazu s jednoduchou syntaxi ad 4) hmmm, pravda, python jsem na woknech nezkousel, ale perl na woknech urcite funguje a bash taky (at uz pod celym cygwinem, nebo pouze s vybrakovanym cygwin DLL a prislusnyma balickama, nebo taky jako v projektu gnuwin32.sf.net) Ale jeste jsem ted mrknul na tu tridu a celkove objektovej navrh a rekl bych, ze by bylo lepsi, kdybys tu tridu udelal jako podtridu tridy String (napr. UntidyFileName) a v ni definoval metodu cleanName a pak to volala jako newname=oldname.cleanName. Protoze volani renamer.cleanName(oldName) je podle me presne ta prasarna, kterou splodi clovek zvyklej na programovani s funkceme, kterej zrovna presel na nejakej jazyk s objektama. A proto se mi taky nelibi Python, protoze self.re_invalid_stuff = re.compile(r"[^a-zA-Z0-9_\.-]+") a self.re_invalid_stuff.sub("_", fileName) nepovazuju za objektovej pristup a cekal bych spis fileName.subst(r"^[-_]+","_"). Jak se to (a) zkratilo, a (b) zprehlednilo, co? Dokud proste bude jazyk kombinovat funkce a operatory s metodama, tak to nebude poradnej OO jazyk (tim samozrejme myslim i Javu, Perl a dalsi pseudo OO jazyky
).
Adresář plný .ttf a z nich je potřeba vytvořit třeba pdf (nebo něco jiného, co by šlo vytisknout), kde bude vždy název písma a pak ukázka toho písma (prostě kousek napsanej tím písmem) a ještě nejlépe tak, aby nebylo na výsledném papíře zbytečně mnoho volného místa. Tak co, je to výzva, že?
#!/bin/bash # prejmenovat.sh srcenc=latin2 while [ -n "$1" ] do n="$(iconv -f "$srcenc" -t "ascii//TRANSLIT" <<< "$1" )" mv "$1" "$n" rename 's/ +/_/g;y/A-Z/a-z/' "$n" shift 1 done
find . -depth | xargs prejmenovat.shJoo, je to trošku neefektivní a ty regexpy u rename budou chtít trošku doladit, ale v zásadě by to fungovat mělo... ps: Netestoval jsem to.
Blby je, ze mi iconv chcipal, pokud ve zdrojovej sade byl nejakej znak mimo definovanej. Takze kdyz budu mit mix iso a cp1250 nebo pripadne v cp1250 nejakej paznak, tak iconv chcipne. Ale jinak bych taky asi sel do iconvu.
Ten rename nevim, jestli by fungoval. Podle manu
NAME
rename - Rename files
SYNOPSIS
rename from to file...
DESCRIPTION
rename will rename the specified files by replacing the first occurrence of from in their name by to.
For example, given the files foo1, ..., foo9, foo10, ..., foo278, the commands
rename foo foo0 foo?
rename foo foo0 foo??
will turn them into foo001, ..., foo009, foo010, ..., foo278.
And
rename .htm .html *.htm
will fix the extension of your html files.
Takze to bude asi ciste na string-to-string konverzi, zadny regulary. Nebo mas jinou verzi? Ja mam "rename from util-linux-2.12r" (kterej manas to do CZ prelozil jako "rename na util-linux-2.12r"???) Jinak tech regexpu ti tam jeste par chybi
To je dobry, taky jsem si nedavno vlastni napsal, funkce prakticky stejna, akorat mam moznost vice IP adres, takze mam seznam proxy serveru a kdyz mi rapid napise "cekej 200minut", tak se pouzije jinej proxy. Pred par dny jsem taky napsal stahovac pro megauploads
Ten megauploads je pekne hnusnej. Odpocitavaci promenna se meni a ma podivny jmeno, napr.
document.getElementById("dlcounter").innerHTML = 'Please wait <b>'+x1786+'</b> seconds'
a URL na stahovanej soubor se tvori pomoci JS funkci, napr.
document.getElementById("download_html").innerHTML = '<a href="Array" class="downloadhtml" onclick="loadingdownload();">Click here to download</font></a>';
var a = String.fromCharCode(Math.abs(-101));
var d = '5' + String.fromCharCode(Math.sqrt(3249));
document.getElementById("dlbutton").innerHTML = '<a href="http://www41.megaupload.com/files/2a9f31' + d + a + 'afac798acff4e54a6c927d7/ANTOINE DE SAINT-EXUPÉRY - Malý Princ.pdf" onclick="loadingdownload();"><IMG SRC="" WIDTH="165" HEIGHT="39" BORDER="0" ALT="" id="dlimage" onmouseover="dlimg.src=this.src;this.src=dlimgover.src;" onmouseout="this.src=dlimg.src;"></a>';document.getElementById('dlcounter').style.display = 'none';document.getElementById('dlcounterimg').style.display = 'none';document.getElementById('dlimage').src = dlimg.src;
Takze jsem na to udelal jednoduchej JS parser a interpret
Zatim umi jenom funkce/metody String.fromCharCode(), Math.abs() a Math.sqrt() a operaci "+"
Ani jsem necekal, ze to bude fungovat, ale jede to
Nejsou sice uplne dokonaly, ale pro moje potreby zatim staci. Pri zmenach stranek budu muset holt upgradovat.
size="x576" for i in *.jpg *JPG do echo "$i" convert -sample $size $i nahledy/$i doneSam pouzivam v tomto skriptu size="800x800>", coz mi zmensi vsechny obrazky, aby vetsi rozmer nebyl pres 800px.
pic-1.jpg JPEG 2304x1728 2304x1728+0+0 DirectClass 8-bit 902.07kb pic-2.jpg[1] JPEG 1728x2304 1728x2304+0+0 DirectClass 8-bit 1.20726mb 0.360u 0:02 $ convert -verbose pic-1.jpg -resize x600 pic-1-a.jpg pic-1.jpg JPEG 2304x1728 2304x1728+0+0 DirectClass 8-bit 902.07kb pic-1.jpg=>pic-1-a.jpg JPEG 2304x1728=>800x600 800x600+0+0 DirectClass 16-bit 97.8203kb 0.810u 0:02 $ convert -verbose pic-2.jpg -resize x600 pic-2-a.jpg pic-2.jpg JPEG 1728x2304 1728x2304+0+0 DirectClass 8-bit 1.20726mb pic-2.jpg=>pic-2-a.jpg JPEG 1728x2304=>450x600 450x600+0+0 DirectClass 16-bit 102.682kb 0.620u 0:02Je to to, co jsi potreboval?
pisnicka.mp3 a písnička.mp3 ?
Jinak pro samotné zbavení se diakritiky se dá použít v příkazové řádce příkaz unaccent (1) .
Takze opravene i pro tenhle pripad .... (plus upraveno tr -s '-_' na tr -s -- '-_' ...)
#!/bin/bash
if [ $# -eq 0 ];then
echo "Usage: $0 directory ..."
else
while [ $# -gt 0 ];do
if [ -d "$1" ];then
find "$1" -mindepth 1 -maxdepth 1 | while read name;do
nname="$( echo "$name" | tr 'ĄąÁÂĂÄáâăäĆÇČćçčĎĐďđÉĘËĚéęëěÍÎíłľĹĺŃŇńňÓÔŐÖóôőöŔŕŘřŚŠŞśšşŤťŢţŮÚŰÜůúűüÝýŹŽŻźžż' 'AaAAAAaaaaCCCcccDDddEEEEeeeeIIiiLLllLlNNnnOOOOooooRrRrSSSsssTtTtUUUUuuuuYyZZZzzztszTSZ' | tr 'A-Z' 'a-z' | tr -cs -- '-0-9a-z_.' '_' | tr -s -- '-_' '-_' | sed 's/^[-_]\+//;s/[-_]*-[-_]*/-/g;s/[-_]\+\.\/./g;s/\.[-_]\+/./g;' )"
if [ "$name" != "$nname" ];then
if [ -e "$nname" ];then
i=0
oname="$nname"
while [ -e "$nname" ];do nname="$( printf "%s.%05i" "$oname" $i )";i=$[$i+1];done
fi
mv -v "$name" "$nname"
fi
find "$1" -mindepth 1 -maxdepth 1 -type d -print0 | xargs -0r "$0"
done
shift
else
echo "Directory $1 does not exist"
fi
done
fi
#!/usr/bin/perl
if (scalar(@ARGV)==0) {
print "Usage: $0 directory ...\n";
} else {
@dirs=@ARGV;
while ($dir=shift @dirs) {
if (-d $dir) {
if (opendir D,"$dir") {
@names=readdir D;
closedir D;
for ($i=0;$i<scalar(@names);$i++) {
push @dirs,"$dir/$names[$i]" if (-d "$dir/$names[$i]);
$nname=$names[$i];
$nname=~tr/ĄąÁÂĂÄáâăäĆÇČćçčĎĐďđÉĘËĚéęëěÍÎíłľĹĺŃŇńňÓÔŐÖóôőöŔŕŘřŚŠŞśšşŤťŢţŮÚŰÜůúűüÝýŹŽŻźžż\x9D\x9A\x9E\x8D\x8A\x8E/AaAAAAaaaaCCCcccDDddEEEEeeeeIIiiLLllLlNNnnOOOOooooRrRrSSSsssTtTtUUUUuuuuYyZZZzzztszTSZ/;
$nname=~tr/A-Z/a-z/;
$nname=~tr/-0-9a-z_./_/cs;
$nname=~tr/-_/-_/s;
$nname=~s/^[-_]+//;
$nname=~s/[-_]*-[-_]*/_/g;
$nname=~s/[-_]+\././g;
$nname=~s/\.[-_]+/./g;
if ($nname ne $names[$i]) {
if (-e $nname) {
$i=0;
$oname=$nname;
while (-e $nname) { $nname=sprintf("%s.%05i",$oname,$i++); }
}
print STDERR "Error in rename: $!\n" unless rename "$dir/$names[$i]","$dir/$nname";
}
}
} else {
print STDERR "Unable to open directory $dir: $!\n";
}
} else {
print STDERR "Directory $dir does not exist\n";
}
}
}
tr už zmíněný unaccent a perl by snad měl umět rozložit akcentovaný znak na kombinující akcent a samotný znak a poté akcenty vyříznout.
Potřeboval jsem to rozjet pod winxp a cygwinem (tr nefungoval). Výsledek vypadá následovně. PS: Je tam opravena chybka viz druhé find. Filtruji .svn adresáře. Změna kalkulace i+1, původní pod bas v cygwin nefungovala. S unaccent viz dále v diskusi by to bylo asi výrazně rychlejší. IFS je asi zbytečné měnit.
#!/bin/bash
srcenc=cp1250
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
if [ $# -eq 0 ];then
echo "Usage: $0 directory ..."
else
while [ $# -gt 0 ];do
if [ -d "$1" ];then
find "$1" -mindepth 1 -maxdepth 1 -type f | grep -v ".svn" | while read name;do
echo "INFO: Filename - $name"
nname="$(iconv -f "$srcenc" -t "ascii//TRANSLIT" <<< "$name" )"
nname="$(echo "$nname" | sed -e "s/'//g" )"
if [ "$name" != "$nname" ];then
if [ -e "$nname" ];then
echo "WARNING: Filename already exist - $nname"
i=0
oname="$nname"
while [ -e "$nname" ];do nname="$( printf "%s.%05i" "$oname" $i )";i=$(($i+1));done
fi
svn rename "$name" "$nname"
fi
done
find "$1" -mindepth 1 -maxdepth 1 -type d -print0 | xargs -0r "$0" | sed -e "s:[-a-zA-Z0-9_/. \]*.svn ::g"
shift
else
echo "Directory $1 does not exist"
fi
done
fi
# restore $IFS
IFS=$SAVEIFS
Cannot rename: ./spole�ensk� 48.txt , exceptions.UnicodeDecodeErrorNavic mi unika, jak dosahnout vycisteni podadresaru a jak pustit skript na jiny adresar, nez ve kterem je .py umisten.
Readonly directory: ././Smaž mnei kdyz jsou volna prava pro vsechny. Stejne dopadne spusteni scriptu pod rootem, to uz nechapu, zrejme nebude chyba v pravech adresare.
drwxrwxrwx 2 dan dan 4,0K 2007-12-03 18:03 Smaž mneDiky za pomoc.
pri zpracovani zahlasiJsi prvni, kdo tu chybu opravdu zaznamenal (vsichni diskutuji, ale nikdo si to nevyzkousi). Ja jsem ji nasel az po zverejneni clanku a uz jsem ji tam opravil. Na konci clanku jsem zalozil seznam chyb, aby slo sledovat zmeny. Zkusim se podivat, kde vlastne pada ta konverze a co s tim, ale neslibuji, ze to bude hned.Readonly directory: ././Smaž mnei kdyz jsou volna prava pro vsechny.
vycisti.py -c cp1250a melo by to spravne prejmenovat, mne to funguje, a to mam nejspis identicky system. Zkopiruj si stavajici verzi, predtim tam bylo vic chyb. Obecne se da rict, ze pokud mas adresar, u ktereho jsi si jisty, ze je tam blbe (asi windows) kodovani, tak spust skript nejdriv tak, jak jsem uvedl vyse. Jsou totiz znaky, ktere se daji nejakou nahodou prevest do unicode, ale skript je nakonec zrusi a nahradi podtrzitkem (vysledek by treba mohl byt 'spole_ensk_kronika_48.txt'), takze bys pak musel jeste rucne nahrazovat podtrzitka.
Tiskni
Sdílej: