csvkit 1.0.1 — csvkit 1.0.1 documentation
▻http://csvkit.readthedocs.io/en/1.0.1/index.html
csvkit is a suite of command-line tools for converting to and working with CSV, the king of tabular file formats.
csvkit 1.0.1 — csvkit 1.0.1 documentation
▻http://csvkit.readthedocs.io/en/1.0.1/index.html
csvkit is a suite of command-line tools for converting to and working with CSV, the king of tabular file formats.
Ah oui super.
Je viens de découvrir un truc dingue. Excel suppose que puisqu’on est en France, le séparateur de champs d’un fichier csv
est non pas ,
mais ;
...
Du coup si quelqu’un nous envoie un véritable fichier csv
et bien il ne s’ouvre pas dans Excel FR.
A moins de faire :
csvformat -D \; "$source" > "$source.tmp"
mv "$source.tmp" "$source"
De même pour convertir un fichier excel en fichier « csv » à la mode excel FR :
source="$1"
dest="${1/xlsx/csv}"
in2csv "$source" > "$dest.tmp"
csvformat -D \; "$dest.tmp" > "$dest"
rm "$dest.tmp"
LibreOffice à la bonne intention de te demander quel est le séparateur utilisé dans les csv lors de leur ouverture ;)
@booz, pour ouvrir un fichier .csv avec Excel, il faut préalablement le renommer en .txt ce qui te donne la main sur le choix du séparateur (et des jeux de caractères).
Tu peux aussi (et ça marche aussi pour l’enregistrement d’Excel vers le csv) dire à ton ordi qu’il n’est pas en France (paramètres régionaux sous Windows ou préférences sous MacOS).
Héhé, et pour gérer les accents sous Mac dans un viel excel, faut en plus faire :
| iconv -f UTF-8 -t macintosh
Donc pour convertir un csv
propre en Excel FR à l’ancienne et que ça s’ouvre en cliquant dessus sans rien faire d’autre :
csvformat -D \; "$source" | iconv -f UTF-8 -t macintosh > "$dest"
Et bonus, une version en spip/php pour générer un fichier à télécharger qui sera ouvert dans Excel avec les bons accents que @fil m’avait fait il y a quelques années.
Dans mon_squelette_fonctions.php
:
<?php
include_spip('inc/charsets');
init_mb_string();
ob_start('convert_utf16');
function convert_utf16($txt) {
return "\xFF\xFE" . mb_convert_encoding("\n".$txt, 'UTF-16LE', 'UTF-8');
}
Dans mon_squelette.xls.html
:
#HTTP_HEADER{Content-Type: application/vnd.ms-excel; charset=UTF-16LE}
...
En fait Excel n’est pas si mauvais que ca. J’ai compris que le coup du séparateur ;
avait sont intérêt en fr
car la ,
est utilisée pour les nombres décimaux en francais (c’est un .
en anglais). Donc pour parser un fichier csv c’est plus simple avec des données fr
si le séparateur est ;
pour ne pas confondre un champs et un nombre décimal.
Par ailleurs j’ai testé csvkit
vs Excel
vs Googlesheets
vs awk
avec un fichier csv de 11Mo, et bien C’est Excel
qui s’en sort le mieux.
csvkit
et Googlesheets
ramment tant qu’ils peuvent, awk
s’en sort bien mais ne sait pas parser simplement sur les ,
en distinguant les ,
séparateurs de champs des ,
décimales.
Excel gère...
Je me demande du coup si le bon format pour des gros fichiers ne serait pas des données séparées par des tabulations.
Je persiste à penser – mais en ce domaine comme dans d’autres, le plus court chemin est celui que l’on connaît – que le moyen le plus simple d’ouvrir un .csv avec Excel est de le mettre en .txt. Tu passes ainsi par l’assistant d’importation de texte qui est court-circuité pour les .csv. Ses 3 étapes te permettent de choisir interactivement (tu visualises le résultat directement)
• le codage du texte et la ligne de début de l’importation
• le ou les séparateur(s) (ou le découpage en colonnes si tu es en largeur fixe)
• et (surtout !) le type de données pour chaque colonne (indispensable pour gérer les différents formats de date), voire de ne pas importer les colonnes qui ne t’intéressent pas (très utile pour les gros fichiers de données : quand tu supprimes les colonnes d’un tableau Excel, l’espace mémoire n’est libéré que lors de l’enregistrement du fichier, les colonnes que tu as importées puis immédiatement supprimées occupent toujours la mémoire).
wring
▻https://github.com/osener/wring
Extract content from webpages using CSS Selectors, XPath, and JS expressions
#Cascading_style_sheets #Hypertext_Markup_Language #JavaScript #Ligne_de_commande #Open_data #XPath
Unix : la commande Awk
▻http://www.shellunix.com/awk.html
Cette commande permet d’appliquer un certain nombre d’actions sur un fichier. La syntaxe est inspirée du C
explainshell.com - match command-line arguments to their help text
►http://explainshell.com
write down a command-line to see the help text that matches each argument / un service en ligne qui explique les commandes #shell qu’on y entre.
Super cool et joliment présenté.
#shell #bash #terminal #ligne_de_commande
Weboob - Web Out of Browsers
►http://weboob.org
Weboob is a collection of applications able to interact with websites, without requiring the user to open them in a browser. It also provides well-defined APIs to talk to websites lacking one.
via @linuxfr
Weboob 0.d - LinuxFr.org
►http://linuxfr.org/news/weboob-0-d
Weboob 0.d est parue ce week‐end. Version marquante par sa stabilité, via un nombre incalculable de corrections de bogues, elle apporte aussi son lot de nouveautés, ainsi qu’on le verra en seconde partie de dépêches. Avec 18 modules rajoutés, Weboob en possède maintenant pas moins de 83 !
+1 @touti
j’aime bien cependant la ligne de commande qui permet de surveiller son compte bancaire avec munin
Boobank
►http://weboob.org/applications/boobank
Boobank is a console application able to list your bank accounts balances on supported websites and to see the expenses details, transfer money, etc.
Excellent texte expliquant la ligne de commande #Unix, ses origines (avec la raison pour laquelle grep se nomme grep), son utilité, et l’invention géniale qu’a représenté le tube.
►http://geekblog.oneandoneis2.org/index.php/2012/09/30/to-understand-the-command-line
►http://www.linux.org.uk/~dan/rumor/rumor.shrink
The truth about Unix: The user interface is horrid
Donald A. Norman Department of Psychology and Program in Cognitive Science Center for Human Information Processing University of California, San Diego La Jolla, California 92093
Pour aller avec : ►http://seenthis.net/messages/31203
#unix #linux #ergonomie #informatique #command_line #ligne_de_commande
arf, bravo #Open_Calais :)
Le papier date de 1981, mais encore pertinent.
Tu sais que pour Open Calais, s’il y a des détections qui ne sont pas pertinentes, tu peux les désactiver en cliquant « Modifier » à côté de « Thèmes automatiques », puis en cliquant sur chaque thème à désactiver (les thèmes désactivés apparaissent barrés).
Oui, @seenthis, j’avais vu.
C’est amusant ce qu’Open Calais trouve (et ne trouve pas) dans les contenus. Tu aurais un lien à me recommander vers une description du fonctionnement de ce « taggeur » sémantique ?
Growl - Extras
►http://growl.info/extras.php#growlnotify
growlnotify is a command-line tool to post Growl notifications. You can control all aspects of the notification (within any boundaries set up in the Growl pane of System Preferences). It can be very useful in shell scripts.
#growl #mac #logiciel #terminal #growlnotify #ligne_de_commande
Quick Command-Line Tips For Local Drupal Development With MAMP | Chapter Three
►http://www.chapterthree.com/blog/josh_koenig/quick_commandline_tips_local_drupal_development_mamp
#MAMP #configuration #virtual_host #ligne_de_commande #logiciel #mac