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 12:33 | Pozvánky

Příští týden bude na MFF UK zahájena série přednášek o architektuře a implementaci operačních systémů. Mezi přednášejícími budou odborníci z firem Kernkonzept, Oracle, Red Hat, SUSE či SYSGO. Pokud si chcete rozšířit obzory (virtualizace, ptrace, ZFS, kdump, ...), vyberte si z harmonogramu téma, které vás zajímá a přijďte. Přednášky se konají každý čtvrtek od 15:40 v učebně S4 na Malostranském náměstí 25 v Praze. Přednášky jsou přístupné veřejnosti (registrace není nutná), studenti UK a ČVUT si je mohou zapsat jako standardní předmět.

Vojtěch Horký | Komentářů: 5
včera 05:00 | Nová verze

Bylo vydáno Ubuntu 18.04.2 LTS, tj. druhé opravné vydání Ubuntu 18.04 LTS s kódovým názvem Bionic Beaver. Přehled novinek v poznámkách k vydání a v přehledu změn.

Ladislav Hagara | Komentářů: 0
včera 03:00 | Zajímavý software

Git History umí u souborů v git repozitářích zajímavým způsobem zobrazit jejich historii a následně jednotlivé změny, viz animovaný gif. Použít jej lze lokálně nebo aktuálně na soubory umístěné na GitHubu. Máte-li ve webovém prohlížeči zobrazen soubor umístěný na GitHubu, nahraďte v URL doménu github.com doménou github.githistory.xyz a nové URL odešlete. Využít lze také rozšíření Chrome i Firefoxu. V plánu je vedle GitHubu také podpora GitLabu a Bitbucketu.

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

Byla vydána verze 1.0 webové a na frameworku Electron postavené desktopové verze svobodného decentralizovaného skupinového komunikátoru Riot (Wikipedie) využívajícího protokolu Matrix (Wikipedie). Přehled novinek i s náhledy v příspěvku na blogu. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 4
14.2. 14:22 | Nová verze

Společnost Collabora oznámila vydání verze 4.0 online kancelářského balíku Collabora Online a také Collabora Online Development Edition (CODE) pro domácí uživatele. Kancelářský balík vychází z LibreOffice Online (cgit).

Ladislav Hagara | Komentářů: 0
14.2. 12:11 | Nová verze

Byla vydána verze 241 správce systému a služeb systemd (GitHub, NEWS). Řešeny jsou také bezpečnostní chyby.

Ladislav Hagara | Komentářů: 0
14.2. 11:44 | IT novinky

Evropský parlament, Komise a Rada (trialog) se dohodli na návrhu reformy autorského práva včetně kontroverzních článků 11 a 13. Více v příspěvku na blogu europoslankyně Julie Redy.

Ladislav Hagara | Komentářů: 11
14.2. 07:00 | Komunita

Čtenářům a čtenářkám AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (FSF, I love Free Software Day, #ilovefs).

Ladislav Hagara | Komentářů: 3
14.2. 06:00 | Zajímavý článek

Jiří Eischmann se v příspěvku Lepší zvuk přes Bluetooth na Linuxu (en) na svém blogu věnuje možnostem přenosu audia mezi linuxovým desktopem a bezdrátovými sluchátky. Zatímco „po drátě“ jde zvuk v nekomprimované podobě, Bluetooth má omezenou propustnost, a proto se musí použít nějaký kompresní kodek. Které kodeky může Linux nabídnout?

Ladislav Hagara | Komentářů: 18
13.2. 15:22 | Bezpečnostní upozornění

Správce balíčků snapd on Canonicalu obsahuje zranitelnost CVE-2019-7304 nazvanou Dirty Sock, kterou může útočník zneužít k eskalaci práv na úroveň administrátora. Ke zranitelnosti je k dispozici PoC (Proof of concept). Je zneužitelná pouze lokálně, pokud má útočník do systému přístup a týká se všech linuxových distribucí s nainstalovaným snapd (zejména distribuce Ubuntu, kde je snapd nainstalován automaticky). Snapd od verze 2.37.1 už je opraven [CSIRT.CZ].

Ladislav Hagara | Komentářů: 0
Máte v desktopovém prostředí zapnutou zvukovou znělku po přihlášení se do systému?
 (8%)
 (1%)
 (90%)
 (1%)
Celkem 317 hlasů
 Komentářů: 11, poslední 14.2. 07:59
Rozcestník

Dotaz: Skript pro změnu *.php na *.htm

10.5.2003 21:28 Lukáš MATELA | skóre: 16
Skript pro změnu *.php na *.htm
Přečteno: 91×
Potřeboval bych v adresáři a v celém stromu změnit soubory *.php na *htm.
V adresáři a stromu jsou ale i soubory *.htm a *jpg.
mv a ani rename neumí přepínač recursive.

Odpovědi

10.5.2003 22:39 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Skript pro změnu *.php na *.htm
nevím, čemu to chceš -- není lepší úprava kofiguráku apache? ;) ale ok:
find . | perl -nle 'chomp;$o=$_;rename$o,$_ if s/\.php$/.htm/;'
11.5.2003 00:03 i__n
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
a pokud nemate perl, tak:
#!/bin/bash
for file in *.php;
do
mv $file ${file%*php}htm
done
11.5.2003 00:06 i__n
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
a pokud chcete bla.php na blahtm, tak zmenit telo na
mv $file ${file%*.php}htm
ta tecicka tam .)
11.5.2003 01:51 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
to asi nebude fungovat rekurzivně v celém stromu ;) nehledě na to, že to zhavaruje při každém druhém speciálním znaku v názvu souboru (stačí i mezera ;) a on někdo nemá perl? :)
11.5.2003 02:22 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
pokud někdo nemá perl (to -type f by se asi mělo dát findu i v předchozí verzi):
find . -type f | sed 's/[`"$\\]/\\\0/g;s/\(.*\)\.php$/mv "\0" "\1.html"/;t;d' | sh
pokud máš v názvech souborů opravdu hodně divné znaky (např. \n), tak tahle varianta neprojde, ale normální divné znaky to oescapuje... a je to samozřejmě o dost pomalejší než ten perl, pokud souborů není jen pár...
11.5.2003 12:09 i__n
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
pardon, nevsiml jsem si toho pozadavku na rekurzi, takze tady je shellovy skript, ktery je rekurzivni a stoprocentni i na divne znaky vseho druhu ;) :
#!/bin/bash
fce()
{
for file in $1/*;
do
[ "$file" = "$1" ] && continue
[ -d "$file" ] && {
fce $file
continue
}

[ "${file##*.}" = "php" ] && { mv "$file" "${file%*php}htm"
echo " ...OK"
}
done
}

fce .
11.5.2003 13:04 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
je vidět, že jsi to na divných znacích nezkoušel. stačí, aby se v názvu adresáře objevila mezera, a zhavaruje to. na dvou místech ;) nehledá to v tečkovaných adresářích, test [ "$file" = "$1" ] && continue je zcela obskurní, nastav raději nullglob, ... ale hlavně proč proboha? find + perl => 2 procesy, vysoká blbuvzdornost find + sed + sh/mv => 3 + n procesů, slušná blbuvzdornost skript v shellu => 1 + n procesů (nejspíš), blbuvzdornost špatná resp. obtížně dosažitelná když chci něco udělat rekusivně se soubory, použiju vždycky find (pokud to nějaký program neumí sám o sobě, jako např. grep) a když můžu, tak společně s xargs (tady to zrovna nějak moc skvěle nejde). i kdybych to perlové nebo sedové řešení napsal pěkně s mezerami, konci řádků a komentáři, bude to kratší a čitelnější než skript v bashi... ostatně, šlo by to udělat i čistě v perlu... perl -e 'use File::Find; finddepth(sub {$o=$_; rename $o,$_ if -f and s/\.php$/.html/}, ".");'
11.5.2003 13:30 i__n
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
;), hledisko vykonnosti a toho,ze to neleze do oteckovanych adresaru a adresaru s mezerou jsou nepodstatne...
v 1.pripade: to je dnes uplne suma fuk jestli to trva 5 nebo 15 sekund..
v 2.pripade.. to by byl fakt vul, kdyby to mel v oteckovanych adresarich nebo adresarich s mezerou... a kdyby nahodou mel, staci rict, poupravim ---> :)
11.5.2003 14:06 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
mno, rozdíl v rychlosti může být klidně i dva řády, vím z vlastní zkušenosti... na adresářích s mezerou to chcípne, ne že by to do nich jen nevlezlo ;) ale podstata mého dotazu byla, proč to řešíš analyticky, když to jde řešit algebaricky. proč píšeš jakýsi skript, což je věc, která se musí napsat někam do souboru a ten pak pustit, když se to dá prostě napsat jako příkaz. etc.
11.5.2003 14:12 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
jinak triky s ${...#...} a ${...%...} a rekursivní volání funkcí shellu nejsou podle mě pro nikoho srozumitelnější než
find | perl -nle '$old=$_; rename $old, $_ if s/\.php$/.htm/'
11.5.2003 18:08 Lukáš MATELA | skóre: 16
Rozbalit Rozbalit vše Skript pro zmenu *.php na *.htm
ad v 2.pripade .. Oteckovane adresare ani adresare s mezerou tam nemam.
A i kdybych mel, tak hned nemusim byt vul ;-).

Ale kazdopadne oboum moc dik za rady, hned to vyzkousim.

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.