Snippets populaires

Convertir un timestamp unix en ligne de commande

C'est bête mais ça peut toujours servir.

$ date -r 1204748227
Wed Mar  5 12:17:07 PST 2008
by Nicolas Perriault on 2008-04-18, tagged cli  date  time 

Créer un patch SVN et l'appliquer

Pour mémoire, voici la méthode pour créer un patch depuis un dépôt subversion et l'appliquer sur un autre checkout de ce même dépôt :

$ cd /path/to/instance/1
$ svn diff /tmp/diff.patch
$ cd /path/to/instance/2
$ patch -p0 -i /tmp/diff.patch
by Nicolas Perriault on 2008-04-11, tagged cli  diff  patch  subversion  svn 

Supprimer les espaces des noms de fichier

Pour supprimer tous les espaces des noms de fichier récursivement :

$ find . -type f -regex ".*\ .*" \
       -exec bash -c 'echo "$1";mv "$1" "${1// /-}"' '{}' '{}'  \;

(via maboite.org)

by Nicolas Perriault on 2008-04-08, tagged bash  cli  find 

Déplacement récursif SVN avec xargs

Pour déplacer n fichiers php d'un dépôt subversion :

$ find . -name *.php | xargs -I % svn mv "%" trunk/

On notera qu'on peut appliquer le principe pour toute commande dont l'ordre des arguments est exotique.

by Nicolas Perriault on 2008-04-07, tagged cli  svn  xargs 

Lire les mails en texte brut sous OS X avec Mail.app

Ouvrir un terminal et taper :

$ defaults write com.apple.mail PreferPlainText -bool TRUE
by Nicolas Perriault on 2008-04-02, tagged mac  mail  mailapp  osx 

Symfony, trier aléatoirement les résultat avec Propel et MySQL

Attention, cela ne fonctionnera probablement qu'avec MySQL :

<?php
$c = new criteria;
$c->addAscendingOrderByColumn('rand()');
$results = TotoPeer::doSelect($c);
by Nicolas Perriault on 2008-03-30, tagged order  propel  rand  symfony 

Enbarquer un objet QuickTime en XHTML

Parfois, on a besoin d'inclure une vidéo QuickTime (.MOV) dans une page XHTML :

<!--[if IE]>
<object id="ieqt" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="640" height="415">
  <param name="src" value="toto.mov">
  <param name="autoplay" value="false"/>
  <param name="controller" value="true"/>
  <param name="loop" value="false"/>
  <p><a href="toto.mov">Télécharger la vidéo</a>.</p>
</object>
<![endif]-->
 
<!--[if !IE]><-->
<object id="nonieqt" data="toto.mov" type="video/quicktime" width="640" height="415">
  <param name="autoplay" value="false"/>
  <param name="controller" value="true"/>
  <param name="loop" value="false"/>
  <p><a href="toto.mov">Télécharger la vidéo</a>.</p>
</object>
<!--><![endif]-->
by Nicolas Perriault on 2008-03-26, tagged html  quicktime  video  xhtml 

Ajouter la coloration dans le terminal Mac OS X

Pour avoir de belles couleurs au chargement d'une session dans le terminal OS X (ou iTerm), il faut éditer son fichier ~/.profile et y ajouter cette ligne :

export CLICOLOR=true

Et recharger le profil :

$ . ~/.profile
by Nicolas Perriault on 2008-03-23, tagged cli  colors  mac  osx 
(1 comment)

Comparer les différences entre deux répertoires

C'est tout con, mais encore faut-il le savoir :)

$ diff -rq rep1/ rep2/
by Nicolas Perriault on 2008-03-22, tagged bash  cli  filesystem  linux 

[Symfony 1.1 beta] Créer un test unitaire et initialiser Propel

Depuis l'apparition du nouveau système de configuration de Symfony 1.1, voici un boostrap type pour vos tests unitaires nécessitant l'accès à l'environnement Propel :

<?php
require_once(dirname(__FILE__).'/../../config/ProjectConfiguration.class.php');
$configuration = ProjectConfiguration::getApplicationConfiguration('main', 'test', true);
include($configuration->getSymfonyLibDir().'/vendor/lime/lime.php');
sfContext::createInstance($configuration);

Pensez cependant à remplacer main par le nom de votre application courante (par ex. frontend).

by Nicolas Perriault on 2008-03-19, tagged lime  propel  symfony  unittest