<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Howto on make me: APe</title><link>https://apealive.net/tags/howto/</link><description>Recent content in Howto on make me: APe</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Tue, 23 Jun 2009 10:44:06 +0000</lastBuildDate><atom:link href="https://apealive.net/tags/howto/index.xml" rel="self" type="application/rss+xml"/><item><title>Jak odstranit diakritiku z názvu souborů</title><link>https://apealive.net/post/jak-odstranit-diakritiku-z-nazvu-souboru/</link><pubDate>Tue, 23 Jun 2009 10:44:06 +0000</pubDate><guid>https://apealive.net/post/jak-odstranit-diakritiku-z-nazvu-souboru/</guid><description>&lt;p&gt;Potřeboval jsem odstranit diakritiku z názvů souborů. Pod winxp s
cygwinem (tr viz dále nefungoval a o příkazu unaccent jsem nevěděl). PS:
Filtruji .svn adresáře. S unaccent by to bylo asi výrazně rychlejší. IFS
je asi zbytečné. Umí si poradit s duplicitami. Adresáře neřeší.&lt;/p&gt;
&lt;p&gt;Výsledek vypadá takto:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;#!/bin/bash&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; srcenc&lt;span style="color:#f92672"&gt;=&lt;/span&gt;cp1250
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; SAVEIFS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;$IFS
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; IFS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt;echo -en “&lt;span style="color:#ae81ff"&gt;\n\b&lt;/span&gt;”&lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt; $# -eq &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; echo “Usage: $0 directory …”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;while&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt; $# -gt &lt;span style="color:#ae81ff"&gt;0&lt;/span&gt; &lt;span style="color:#f92672"&gt;]&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;do&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt; -d “$1” &lt;span style="color:#f92672"&gt;]&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; find “$1” -mindepth &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; -maxdepth &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; -type f | grep -v “.svn” | &lt;span style="color:#66d9ef"&gt;while&lt;/span&gt; read name;&lt;span style="color:#66d9ef"&gt;do&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; echo “INFO: Filename - $name”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; nname&lt;span style="color:#f92672"&gt;=&lt;/span&gt;”&lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt;iconv -f “$srcenc” -t “ascii//TRANSLIT” &lt;span style="color:#f92672"&gt;&amp;lt;&amp;lt;&amp;lt;&lt;/span&gt; “$name” &lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; nname&lt;span style="color:#f92672"&gt;=&lt;/span&gt;”&lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt;echo “$nname” | sed -e “s/’//g” &lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt; “$name” !&lt;span style="color:#f92672"&gt;=&lt;/span&gt; “$nname” &lt;span style="color:#f92672"&gt;]&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;then&lt;/span&gt; 
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;if&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt; -e “$nname” &lt;span style="color:#f92672"&gt;]&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;then&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; echo “WARNING: Filename already exist - $nname”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; i&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; oname&lt;span style="color:#f92672"&gt;=&lt;/span&gt;”$nname”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;while&lt;/span&gt; &lt;span style="color:#f92672"&gt;[&lt;/span&gt; -e “$nname” &lt;span style="color:#f92672"&gt;]&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;do&lt;/span&gt; nname&lt;span style="color:#f92672"&gt;=&lt;/span&gt;”&lt;span style="color:#66d9ef"&gt;$(&lt;/span&gt; printf “%s.%05i” “$oname” $i &lt;span style="color:#66d9ef"&gt;)&lt;/span&gt;”;i&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;$((&lt;/span&gt;$i&lt;span style="color:#f92672"&gt;+&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;&lt;span style="color:#66d9ef"&gt;))&lt;/span&gt;;&lt;span style="color:#66d9ef"&gt;done&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; svn rename “$name” “$nname”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;done&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; find “$1” -mindepth &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; -maxdepth &lt;span style="color:#ae81ff"&gt;1&lt;/span&gt; -type d -print0 | xargs -0r “$0” | sed -e “s:&lt;span style="color:#f92672"&gt;[&lt;/span&gt;-a-zA-Z0-9_/. &lt;span style="color:#ae81ff"&gt;\]&lt;/span&gt;*.svn ::g”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; shift
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;else&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; echo “Directory $1 does not exist”
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;done&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#66d9ef"&gt;fi&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#75715e"&gt;# restore $IFS&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; IFS&lt;span style="color:#f92672"&gt;=&lt;/span&gt;$SAVEIF
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Jiné a podobné možnosti:&lt;/p&gt;</description></item><item><title>Exiftool - pár triků na fotky</title><link>https://apealive.net/post/exiftool-par-triku-na-fotky/</link><pubDate>Fri, 10 Apr 2009 11:53:44 +0000</pubDate><guid>https://apealive.net/post/exiftool-par-triku-na-fotky/</guid><description>&lt;p&gt;Ahoj, dnes prakticky.&lt;/p&gt;
&lt;p&gt;Všichni fotíme. Mám v rukávu pár triků pro manipulaci s exif informací
uloženou ve fotografii. Při zpracování fotek z Thajska jsem měl záběry z
cca pěti fotoaparátů. Někteří autoři měnili čas fotoaparátu během
přejezdů čaosových zón, jiní ne. Bylo třeba hromadně opravit čas ve
všech fotkách a pokud možno dosáhnout jednotného řazení fotek v adresáři
pro příjemné procházení.&lt;/p&gt;
&lt;p&gt;Potřeboval jsem tedy co uměl modifikovat v exif informaci fotografie
datum a čas vytvoření. Následně pak použít opraveného data a času pro
změnu jména fotky do názvu např: &lt;em&gt;YYYYMMDD_&amp;lt;puvodni nazev&amp;gt;.jpg&lt;/em&gt; .&lt;/p&gt;</description></item></channel></rss>