<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Shell | Nerdpress.org</title>
	<atom:link href="https://nerdpress.org/tag/shell/feed/" rel="self" type="application/rss+xml" />
	<link>https://nerdpress.org</link>
	<description>...dev, tech problems and solutions.</description>
	<lastBuildDate>Tue, 17 May 2011 11:27:17 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>symfony 1.4 installer</title>
		<link>https://nerdpress.org/2011/05/17/symfony-1-4-installer/</link>
		
		<dc:creator><![CDATA[Ivo Bathke]]></dc:creator>
		<pubDate>Tue, 17 May 2011 11:27:17 +0000</pubDate>
				<category><![CDATA[Project Setup]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[Shell]]></category>
		<category><![CDATA[symfony 1.4]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://nerdpress.org/?p=1490</guid>

					<description><![CDATA[<p>Ich hab mal einen symfony 1.4 installer shell script auf github gepackt. Damit kann man &#8220;ruckizucki&#8221; auf Ubuntu ein lokales symfony 1.4 Projekt aufsetzen. Es ist ein fork von einem virtualhost create script und macht folgendes: &#8211; holt den letzten symfony 1.4 stable release via svn &#8211; setzt alle notwendigen rechte zB auf den cache &#8230; </p>
<p class="link-more"><a href="https://nerdpress.org/2011/05/17/symfony-1-4-installer/" class="more-link">Continue reading<span class="screen-reader-text"> "symfony 1.4 installer"</span></a></p>
The post <a href="https://nerdpress.org/2011/05/17/symfony-1-4-installer/">symfony 1.4 installer</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></description>
										<content:encoded><![CDATA[<p>Ich hab mal einen <a href="https://github.com/ivoba/virtualhost.sh/tree/ubuntu-symfony">symfony 1.4 installer shell script</a> auf github gepackt.<br />
Damit kann man &#8220;ruckizucki&#8221; auf Ubuntu ein lokales symfony 1.4 Projekt aufsetzen. </p>
<p>Es ist ein fork von einem <a href="https://github.com/pgib/virtualhost.sh">virtualhost create script</a> und macht folgendes:</p>
<ul>
&#8211; holt den letzten symfony  1.4 stable release via svn<br />
&#8211; setzt alle notwendigen rechte zB auf den cache folder<br />
&#8211; bereitet die datenbank vor<br />
&#8211; legt eine app an<br />
&#8211; macht eine .gitignore<br />
&#8211; und ruft das virtualhost creator script auf, was den vhost anlegt auf &#8220;web&#8221;
</ul>
<p><span id="more-1490"></span></p>
<p>Einfach im Verzeichnis wo die scripte liegen:</p>
<pre class="brush: bash; title: ; notranslate">
./symfony_installer.sh myproject
</pre>
<p>&#8230; durchhangeln und dann auf <em>http://myproject.local</em> aufrufen</p>
<p>Entfernen kann man das Projekt inkl. virtual host auch wieder:</p>
<pre class="brush: bash; title: ; notranslate">
sudo ./virtualhost --delete myproject.local --symfony
</pre>
<p>&#8230; kommt vielleicht 2 Jahre zu spät ;)</p>The post <a href="https://nerdpress.org/2011/05/17/symfony-1-4-installer/">symfony 1.4 installer</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>git prompt</title>
		<link>https://nerdpress.org/2010/11/13/git-repository-status-im-shell-prompt/</link>
					<comments>https://nerdpress.org/2010/11/13/git-repository-status-im-shell-prompt/#comments</comments>
		
		<dc:creator><![CDATA[Max Girkens]]></dc:creator>
		<pubDate>Sat, 13 Nov 2010 14:37:43 +0000</pubDate>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[vServer]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[Shell]]></category>
		<category><![CDATA[tools]]></category>
		<guid isPermaLink="false">https://nerdpress.org/?p=1179</guid>

					<description><![CDATA[<p>gerade gefunden: git prompt &#8211; GIT repository status direkt im shell prompt. nützlich und schön bunt.</p>
The post <a href="https://nerdpress.org/2010/11/13/git-repository-status-im-shell-prompt/">git prompt</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></description>
										<content:encoded><![CDATA[<p>gerade gefunden:</p>
<p><a href="http://volnitsky.com/project/git-prompt/">git prompt</a> &#8211; GIT repository status direkt im shell prompt.</p>
<p>nützlich und schön bunt.</p>The post <a href="https://nerdpress.org/2010/11/13/git-repository-status-im-shell-prompt/">git prompt</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></content:encoded>
					
					<wfw:commentRss>https://nerdpress.org/2010/11/13/git-repository-status-im-shell-prompt/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>symfony 1.4 &#8211; automatisierte builds</title>
		<link>https://nerdpress.org/2010/11/12/symfony-1-4-automatisierte-builds/</link>
		
		<dc:creator><![CDATA[Max Girkens]]></dc:creator>
		<pubDate>Fri, 12 Nov 2010 09:48:11 +0000</pubDate>
				<category><![CDATA[Deployment]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Symfony]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[continuous integration]]></category>
		<category><![CDATA[php5]]></category>
		<category><![CDATA[Shell]]></category>
		<guid isPermaLink="false">https://nerdpress.org/?p=1158</guid>

					<description><![CDATA[<p>Hier mal ein Beispiel für einen (via shell script) automatisierten build bei einer PHP, Symfony 1.4 Anwendung mit GIT zur Versionskontrolle. #wipe old version of build db mysql -uUSER -pPW drop build-db #wipe the build workspace rm -rf ./build-workspace #checkout the sourcecode git clone git@my-domain.com:my-repository ./build-workspace cd build-workspace #(re)configure database for build server php ./symfony &#8230; </p>
<p class="link-more"><a href="https://nerdpress.org/2010/11/12/symfony-1-4-automatisierte-builds/" class="more-link">Continue reading<span class="screen-reader-text"> "symfony 1.4 &#8211; automatisierte builds"</span></a></p>
The post <a href="https://nerdpress.org/2010/11/12/symfony-1-4-automatisierte-builds/">symfony 1.4 – automatisierte builds</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></description>
										<content:encoded><![CDATA[<p>Hier mal ein Beispiel für einen (via shell script) automatisierten build bei einer PHP, Symfony 1.4 Anwendung mit GIT zur Versionskontrolle.</p>
<pre class="brush: bash; title: ; notranslate">
#wipe old version of build db
mysql -uUSER -pPW drop build-db
</pre>
<pre class="brush: bash; title: ; notranslate">
#wipe the build workspace
rm -rf ./build-workspace
</pre>
<pre class="brush: bash; title: ; notranslate">
#checkout the sourcecode
git clone git@my-domain.com:my-repository ./build-workspace
</pre>
<pre class="brush: bash; title: ; notranslate">
cd build-workspace
</pre>
<p><span id="more-1158"></span></p>
<pre class="brush: bash; title: ; notranslate">
#(re)configure database for build server
php ./symfony configure:database &quot;mysql:host=build-db-server;dbname=build-server-sql-user&quot;
</pre>
<pre class="brush: bash; title: ; notranslate">
#(re)build db
php ./symfony doctrine:build-db
</pre>
<p>der Einfachkeit halber liegt der zu migrierende sql dump schon im repository.<br />
Könnte man natürlich auch jetzt von remote holen.</p>
<pre class="brush: bash; title: ; notranslate">
#import some test data
mysql -uUSER -pPW --force database_name &lt; data/sql/some_data_to_migrate.sql
</pre>
<p>hier sollte keine Handarbeit mehr nötig sein,<br />
da man ja alle DB Änderungen per <a href="http://www.doctrine-project.org/projects/orm/1.2/docs/manual/migrations/en">doctrine migrations</a> gemacht hat.<br />
Im Gegensatz zu schema Änderungen bleibt man so abwärtskompatibel zu Vorgängerversionen.</p>
<pre class="brush: bash; title: ; notranslate">
#migrate the test data / db if necessary
php ./symfony doctrine:migrate
</pre>
<p>zum guten Schluss alles testen</p>
<pre class="brush: bash; title: ; notranslate">
#run test, save results as xml
php ./symfony test:all -xml=path/to/results.xml
</pre>
<p>Es lohnt sich in mehrfacher Hinsicht wirklich das komplette Projekt inkl. DB automatisiert von 0 installierbar zu machen.<br />
Auch wenn es vielleicht erstmal nur auf ein paar Instanzen laufen soll.</p>
<p>Man kann erstens bei verteiltem Arbeiten schnell mal eine weitere Arbeitskopie auf einem anderen Rechner erstellen.</p>
<p>Zweitens kann man relativ <a href="http://prendreuncafe.com/blog/post/2009/10/06/Simple-Continuous-Integration-of-a-Symfony-Project-using-Hudson">einfach</a> ein continuous integration setup auf die Beine stellen und sofort ruhiger schlafen ;)</p>
<p>Außerdem kann man ständig die Migration von aktuellen Live Daten, oder einer Vorgängerversion in die Entwicklungsversion testen.<br />
&#8220;Continuous Migration&#8221; ;)</p>The post <a href="https://nerdpress.org/2010/11/12/symfony-1-4-automatisierte-builds/">symfony 1.4 – automatisierte builds</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Textbausteine auf der Shell ersetzen / löschen</title>
		<link>https://nerdpress.org/2009/09/10/textbausteine-auf-der-shell-ersetzen-loschen/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 10 Sep 2009 15:31:00 +0000</pubDate>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[RegEx]]></category>
		<category><![CDATA[Shell]]></category>
		<category><![CDATA[Textmanipulation]]></category>
		<guid isPermaLink="false">https://nerdpress.org/?p=172</guid>

					<description><![CDATA[<p>Wie kann ich in beliebig vielen Textdateien einen bestimmten Satz löschen? Ganz konkret ging es um 420 Dateien in verschiedenen Ordnern. Ein klarer Fall für den Shell Guru (Lukas). Da mir so schwindelig geworden ist als er mir die Instruktionen diktierte, beschloss ich dies gleich mal hier festzuhalten. Wir benutzen &#8220;ed&#8221; &#8211; ed ist der &#8230; </p>
<p class="link-more"><a href="https://nerdpress.org/2009/09/10/textbausteine-auf-der-shell-ersetzen-loschen/" class="more-link">Continue reading<span class="screen-reader-text"> "Textbausteine auf der Shell ersetzen / löschen"</span></a></p>
The post <a href="https://nerdpress.org/2009/09/10/textbausteine-auf-der-shell-ersetzen-loschen/">Textbausteine auf der Shell ersetzen / löschen</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></description>
										<content:encoded><![CDATA[<p>Wie kann ich in beliebig vielen Textdateien einen bestimmten Satz löschen? Ganz konkret ging es um 420 Dateien in verschiedenen Ordnern. Ein klarer Fall für den Shell Guru (Lukas). Da mir so schwindelig geworden ist als er mir die Instruktionen diktierte, beschloss ich dies gleich mal hier festzuhalten.<br />
Wir benutzen &#8220;ed&#8221; &#8211; ed ist der &#8220;vi&#8221; für die Kommandozeile. <em>Eigentlich dachte ich vi sei schon Kommandozeile genug, aber ich wurde eines besseren belehrt!</em></p>
<p>Wir legen uns das remove.ed Skript an:<br />
<img decoding="async" class="alignnone size-full wp-image-195" title="1" src="https://nerdpress.org/wp-content/uploads/2009/09/1.png" alt="1" width="510" /><span id="more-172"></span><br />
&#8220;%&#8221; steht für in der ganzen Datei,<br />
&#8220;s&#8221; wie search<br />
&#8220;,mein langer satz den ich loswerden möchte,,&#8221; ersetzen durch &#8220;nichts&#8221; hier könnte zwischen dem 2. und 3. Komma auch &#8220;mein neuer satz stehen&#8221;.<br />
&#8220;g&#8221; greedy &#8211; ersetzt alles&#8230; nicht nur den erst besten Hit.<br />
&#8220;w&#8221; schreiben<br />
&#8220;q&#8221; feierband / quit</p>
<p><strong>jetzt der voodoo</strong>: suche alle Dateien und ersetze es mit den Angaben von Ed. (Aus unserer remove.ed)</p>
<p>erstmal <strong>testen</strong>:</p>
<p><img decoding="async" class="alignnone size-full wp-image-197" title="3" src="https://nerdpress.org/wp-content/uploads/2009/09/3.png" alt="3" width="510" /></p>
<p>Wenn aufm Bildschirm eine entsprechend lange Liste mit den richtigen Pfaden und Dateien auftaucht, prima! So in etwa:<br />
<img decoding="async" class="alignnone size-full wp-image-198" title="4" src="https://nerdpress.org/wp-content/uploads/2009/09/4.png" alt="4" width="510" /><br />
<strong>jetzt abfeuern</strong> &#8211; das gleiche wie eben, nur das wir mit der letzten Pipe das ganze an die bash übergeben, denn die Ausgabe oben sind gültige Shell Befehle.</p>
<p><img decoding="async" class="alignnone size-full wp-image-199" title="5" src="https://nerdpress.org/wp-content/uploads/2009/09/5.png" alt="5" width="510" /></p>
<p>Und knick knack &#8211; weg sind sie!</p>The post <a href="https://nerdpress.org/2009/09/10/textbausteine-auf-der-shell-ersetzen-loschen/">Textbausteine auf der Shell ersetzen / löschen</a> first appeared on <a href="https://nerdpress.org">Nerdpress.org</a>.]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
