25. August 2010 von sägefisch
Um durch etwaige Cronjobs eine Prüfung von 2 Dateien und darauf folgende Aktionen zu erzeugen, kann ein shell script Verwendung finden.
#!/bin/bash
SOURCE=/mount/data/new_file.txt
TARGET=/srv/www/vhosts/www/app/config/old_file.txt
diff -i -b -B -q ${SOURCE} ${TARGET}
if [ ! $? -eq 0 ]
then
echo "new file is different from old one - copy new one to old"
cp ${SOURCE} ${TARGET}
else
echo "no difference between files - nothing to do"
fi
Tags: bash, copy, diff, script, Shell, source, target
Abgelegt in Deployment, Linux, Server, Shell | Keine Kommentare »
20. Juni 2010 von sägefisch
Um in der Vielzahl von Android Applikationen die Guten herauszufinden, macht androidpit.de die entscheidenden Tests und gibt gute Entscheidungshilfen.
Tags: Android, androidpit, app, handy, mobile, übersicht
Abgelegt in Android | Keine Kommentare »
14. Mai 2010 von sägefisch
Unter folgendem Link findet Ihr die GIT Quickreferenz für SVN Umsteiger.
http://git-scm.com/course/svn.html
Tags: control, GIT, repository, subversion, SVN, version
Abgelegt in Deployment, GIT, Linux, SVN, Server, Shell, Versionierung | Keine Kommentare »
07. Mai 2010 von sägefisch
Um in Agavi custom logfiles zu erstellen, benötigt man einen eigens erstellten logger + appender in der app/config/logger.xml.
<!-- logs only custom messages in a custom log -->
<logger name="custom" class="AgaviLogger" level="'custom'">
<appenders>
<appender>CustomLogAppender</appender>
</appenders>
</logger>
<appender name="CustomLogAppender" class="AgaviFileLoggerAppender" layout="DateTimeLayout">
<ae:parameters>
<ae:parameter name="file">%core.app_dir%/log/custom.log</ae:parameter>
</ae:parameters>
</appender>
Dann kann man den Logger quasi überall wo der LoggerManager verfügbar ist benutzen.
$message = 'Custom logging message';
$this->getContext()->getLoggerManager()->log(new AgaviLoggerMessage($message, 'custom'), 'custom');
Und in der bash das logfile einsehen.
tail -f app/log/custom.log
Tags: agavi, bash, log, logger, logging, PHP, XML
Abgelegt in Agavi, Debugging, Frameworks, Linux, PHP, Shell, XML | Keine Kommentare »
03. Mai 2010 von sägefisch
In verteilten Systemen kommt es des öfteren vor, das unterschiedliche SVN Versionen zum Einsatz kommen.
Wenn euer SVN diese Meldung ausgibt:
svn: This client is too old to work with working copy 'xyz'. You need to get a newer Subversion client, or to downgrade this working copy. See http://subversion.tigris.org/faq.html#working-copy-format-change for details.
kann das Python Script change-svn-wc-format eine SVN WorkingCopy in ein bestimmtes anderes SVN Versionsformat wechseln.
Tags: change, python, SVN, version, working copy
Abgelegt in Deployment, Linux, SVN, Server, Shell, Versionierung | Keine Kommentare »
16. März 2010 von sägefisch
Da GZIP selbst keine ganzen Ordner packen kann, kann man TAR das gepackte Archiv erzeugen lassen.
user@server: tar cvzf ordner.tar.gz ordnername
user@server: tar zxvf ordner.tar.gz
Tags: dir, entpacken, gzip, ordner, packen, tar
Abgelegt in Deployment, Linux, Server, Shell | Keine Kommentare »
03. März 2010 von sägefisch
Das abwechselnd farbliche Absetzen von Tabellenzeilen in HTML kann auch mittels einer CSS 3 Pseudo Klasse umgesetzt werden.
/* heighlight jeder 2ten zeile beginnend mit der ersten */
tr:nth-of-type(2n+1) { background-color:#f7f7f7; }
/* heighlight jeder 2ten zeile beginnend mit der zweiten */
tr:nth-of-type(2n) { background-color:#f7f7f7; }
Der InternetExplorer weigert sich leider bis dato diese CSS 3 Angaben zu interpretieren.
Mehr Informationen zu CSS 3 Selektoren liefert der W3C
Tags: css, css 3, highlight, klasse, of type, pseudo, row, tabelle
Abgelegt in CSS, Layout & Styles | Keine Kommentare »
02. Dezember 2009 von sägefisch
Hier findet Ihr den Shell Scripting Guide:
freeos.com/guides/lsst/
Dann kann man beispielsweise so kleine Helferlein zum Löschen von Logs und Caches wie diesen hier basteln:
#!/bin/bash
cd `dirname $0` # go to scripts dir
cd .. # step ahead
arr[0]='Application1/app/cache/*'
arr[1]='Application1/var/cache/*'
arr[2]='Application2/application/cache/*'
arr[3]='Application2/application/logs/*'
arr[4]='Application2/pub/tmp/*'
arr[5]='Application3/application/cache/*'
arr[6]='Application3/application/logs/*'
arr[7]='Application3/pub/tmp/*'
i=0
while [ $i -lt ${#arr[@]} ]
do
rm -rf ${arr[$i]}
echo "${arr[$i]} deleted"
(( i=$i+1 ))
done
Tags: bash, bin, freeos, guide, Linux, scripting, Shell, ssh
Abgelegt in Deployment, Linux, Server, Shell | Keine Kommentare »