mercredi, avril 28, 2010

Compter le nombres de lignes dans des fichiers

Un petit bout de code pour compter le nombre de lignes par fichier et envoyer le résultat dans un fichier csv pour pouvoir trier et faire de beaux diagrammes excel pour votre chef ;)
require 'fileutils'

File.open("result.csv", File::CREAT|File::RDWR) do |csv_file|
  Dir["JSPs/**/*.jsp"].each do |file|
    lines = File.readlines(file)
    csv_file << "#{file}\t#{lines.length}\n"
  end
end

jeudi, avril 15, 2010

Delicious linkchecker

Je voulais faire un peu de ménage dans mes 2547 Bookmarks delicious et supprimer ou mettre à jour les liens mais aucun outil "officiel" cf le forum.
Voici un petit bout de code qui permet de vérifier tous les bookmarks: http://gist.github.com/366112
Ca m'a permis de faire mon premier "gist", c'est mieux que de créer un projet juste pour ça.
Résultats du nettoyage: Quelque liens 404 (pas trop d'ailleurs) surtout des 301 moved permanently généralement le www à disparu de l'url :)
Technorati tags:

mardi, mars 23, 2010

Query Browser pour MongoDB

Comment chercher dans MongoDB des données (un peu comme mysql en ligne de commande) ?
Très simple utiliser irb et la lib ruby et suivre le tutorial: http://www.mongodb.org/display/DOCS/Ruby+Tutorial#RubyTutorial-AQuickTour
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'mongo'
=> true
irb(main):004:0> m = Mongo::Connection.new
=> #
irb(main):005:0> m.database_names.each { |name| puts name }
local
admin
my_db
=> ["local", "admin", "my_db"]
irb(main):008:0> db = Mongo::Connection.new.db("my_db")
=> #
irb(main):009:0> db.collection_names.each { |name| puts name }
people
system.indexes
=> ["people", "system.indexes"]
irb(main):011:0> coll = db["people"]
irb(main):012:0> coll.find.each { |item| puts item.inspect }
(...)
{"_id"=>ObjectID('4ba96c2360d99e0ba1000019'), "birthdate"=>nil, "phone_numbers"=>[],
 "last_name"=>"bar2", "login"=>"foobar2", "password"=>"secret", "first_name"=>"foo2"}
=> nil 
Technorati tags: