CutMyUrl : Un raccourcisseur d’url en ligne de commande

Aujourd’hui je vais vous faire la présentation d’un script BASH portant le nom de CutMyUrl. Ce petit script a pour fonction de raccourcir une url en utilisant le service mis à disposition par ur1.ca, un service que les utilisateurs d’Identi.ca connaissent à coup sûr.

Raccourcir une adresse donnée par l’utilisateur : CutMyUrl ne fait que ça et le fait plutôt bien, en tout cas depuis une semaine que j’utilise celui-ci, il fonctionne sans problème.

Pourquoi ce script ? Tout d’abord et cela va de soi, parce que j’en ai l’utilité : Partager un lien dans sa version courte est tout de même bien pratique. Bon je vous l’accorde entre ouvrir un terminal et un navigateur pour faire exactement la même tâche, il n’y a vraiment pas de différence à l’usage… Mais à titre personnelle, je préfère utiliser un terminal qui s’ouvrira beaucoup plus rapidement.

Le script se comporte comme la majorité des outils en ligne de commande avec ses options –help, –info, etc… Pour l’utilisateur final, ça ne sert pas à grand chose mais cela permettra par la suite d’ajouter assez facilement des nouvelles fonctionnalités…

Le script :

#!/bin/sh
 
#  CutMyUrl
#  Version 1.0
#  A shortener url command line
#  Using the open source service ur1.ca, http://ur1.ca/
#  By Lopes Ferreira David, http://ubunblox.servhome.org/
#  ubunblox@gmail.com
#  Licence GPL
#  Depends : curl
#########################
 
 
	## Variables ##
r="\033[0m"		# regular
f="\033[1m"		# fat
v="1.0"			# version
n="CutMyUrl"		# name
u="http://ur1.ca/"	# url 
#
#
	## Check arg in $2 ##
if [ -n $2 ] ; then 
	arg=$2
fi
#
#
	## Fonction cut url ##
_cut_url () {
short_url=$(curl -s "$u" -d"longurl=$arg" | grep 'Your ur1 is' | sed 's/^.*<a href="//;s/".*$//')
}
#
#
	## Fonction display short url ##
_url () {
_cut_url
if [ -z $short_url ] ; then
	echo -e "\n$f---------→ Need help $USER ? $r\n"
	_help
else
	echo -e "\n$short_url \n"
fi	
}
#
#
	## Fonction help ##
_help () {
echo -e "$f NAME$r"
echo -e "\t$f $n $r- Shortener url command line. \n"
echo -e "$f SYNOPSIS$r"
echo -e "\t$f cutmyurl$r OPTION [URL]...\n"
echo -e "$f DESCRIPTION$r"
echo -e "\t $f-u, --url $r \t[URL]\tShort url."
echo -e "\t $f-h, --help $r\t\tHelp."
echo -e "\t $f-v, --version $r\t\tVersion."
echo -e "\t $f-i, --info $r\t\tInformations.\n"
echo -e "$f EXAMPLE$r"
echo -e "\t$f cutmyurl$r -u http://google.com"
echo -e "$f END$r"
}
#
#
	## Fonction informations ##
_info () {
echo -e "$f $n$r"
echo -e "\n\t # A shortener url command line "
echo -e "\t # Using the open source service ur1.ca, http://ur1.ca/"
echo -e "\t # By Lopes Ferreira David, http://ubunblox.servhome.org/"
echo -e "\t # ubunblox@gmail.com"
echo -e "\t # Licence GPL \n"
}
#
#
	## Fonction version ##
_version () {
echo -e "$f VERSION$r"
echo -e "\t$f version :$r\t$v\n"
echo -e "$f CHANGE LOG$r"
echo -e "\t$f 16/04/2011 :$r\tFirst release\n" 
}
#
#
	## Start CutMyUrl ##
case "$1" in
	-h | --help)		_help
	;;
	-i | --info)		_info
	;;
	-v | --version)		_version
	;;
	-u | --url)		_url
	;;
	*)			_help
esac
#
#
	## End ##
exit 0
#
#

Comme vous pouvez le voir le script est simple, tout comme l’est le « pseudo anglais » qui le compose ! Si vous avez des remarques à faire ne vous gênez surtout pas ;) .

Note : CutMyUrl utilise curl, vérifiez si il est installé sur votre système.

Installation :

Arch Linux :

Le script est disponible sur AUR, un coup de yaourt sera suffisant :

$ yaourt -S cutmyurl

Enjoy :

$ cutmyurl -u http://votre/url

Autres distributions :

Télécharger tout d’abord le paquet :

$ wget http://ubunblox.free.fr/UbunBlox/AUR/cutmyurl-1.0.tar.gz

Décompresser l’archive et rendez le fichier exécutable :

$ tar -xf cutmyurl-1.0.tar.gz
$ chmod +x cutmyurl

Lancez ensuite l’application :

$ ./cutmyurl -u http://votre/url

Syntaxe d’utilisation:

$ cutmyurl [option] [url]

Exemples :

Pour raccourcir l’adresse http://google.fr :

$ cutmyurl -u http://google.fr

Pour afficher la page d’aide avec la liste des options :

$ cutmyurl --help

Comme dit précédemment, n’hésitez pas à laisser vos remarques !

Lien :

Vus : 1766
Publié par Weedfast : 184