Diese Woche in der Konsole #3

Posted on July 19th, 2009 in Konsole, Ubuntu | 5 Comments »

Diese Woche in der Konsole

  1. Sich die Arbeitsstunden und den Wert eines Projektes anhand der Projektdateien anzeigen lassen mit sloccount.

    $ sloccount ~/project1/
    
    SLOC    Directory       SLOC-by-Language (Sorted)
    35344   lib             php=35344
    1049    tests           php=1022,sh=27
    911     templates       php=911
    653     lang            php=653
    471     top_dir         php=471
    426     resources       php=316,perl=108,sh=2
    206     config          php=206
    139     external        php=139
    69      api             php=69
    0       css             (none)
    0       images          (none)
    0       js              (none)
    0       tmp             (none)
    
    Totals grouped by language (dominant language first):
    php:          39131 (99.65%)
    perl:           108 (0.28%)
    sh:              29 (0.07%)
    
    Total Physical Source Lines of Code (SLOC)                = 39,268
    
    Development Effort Estimate, Person-Years (Person-Months) = 9.44 (113.23)
    (Basic COCOMO model, Person-Months = 2.4 * (KSLOC**1.05))
    
    Schedule Estimate, Years (Months)                         = 1.26 (15.08)
    (Basic COCOMO model, Months = 2.5 * (person-months**0.38))
    
    Estimated Average Number of Developers (Effort/Schedule)  = 7.51
    
    Total Estimated Cost to Develop                           = $ 1,274,625
    (average salary = $56,286/year, overhead = 2.40).
    
  2. Nur die Struktur (Schema) ohne Daten von einer MySQL-Datenbank erstellen.

    mysqldump -u user -ppasswort --no-data datenbankname > database_backup.sql
  3. Mit grep nach “foo” rekursiv in Dateien suchen ohne Unterordner von Subversion.

    grep foo -R  --exclude-dir='.svn' *
  4. Suche nach einem Text in allen Dateien inkl. Unterordner

    find . -name * -exec grep -i 'TEXT' '{}' ';'
  5. Zuletzt geänderten Datein rekursiv im aktuellen Ordner anzeigen.

    find . -printf "%T@ %p\n" | sort -n | tail

Diese Woche in der Konsole #1

Posted on July 5th, 2009 in Programmierung, Ubuntu | 1 Comment »

Diese Woche in der Konsole

  1. Mit curl von der Komandozeile aus twittern:
    curl -u Benutzername:Passwort \
    -d status="Nachricht" http://twitter.com/statuses/update.xml
  2. Suchen und Ersetzen mit einem Ruby Einzeiler:
    ruby -i.bkp -pe "gsub(/suche/, 'ersetze')" *.php

    Hier werden alle PHP Dateien in dem aktuellen Ordner ersetzt und zusätzlich wird eine Backup Datei (.bkp) erstellt.

  3. Einen Ordner via ssh mittels rsync clonen:
    rsync -avz -e 'ssh -p portnummer' user@host /Quellordner /Zielordner

    Wird der Quellordner ohne abschliessenden / angegeben, so wird der Quellordner selbst kopiert. Ansonsten nur der Inhalt

  4. Datenbank von einem anderen Server via ssh übernehmen:
    ssh user@host mysqldump -u dbuser_server -p dbpwd_server databasename \
    --lock-tables | mysql --verbose -u dbuser_local -p dbpwd_local
  5. Verschlüsselte Text-Datei mit Vim anlegen:
  6. vim -x datei