11/08/08

Fonction bash pour création de XPI

Terminal

Bon, zipper un dossier avec une interface graphique, c'est pas que ce soit la loose, quoique, mais encore faudra-t-il modifier l'extension de zip à xpi[1], une fois que ce sera fini… imaginons que vous faites çà à chaque fois que vous modifiez l'extension sur laquelle vous êtes en train de travailler[2]… et vous allez vite devenir fou !

Aussi, c'est pourquoi, je me suis écrit une petit fonction[3] pour mettre dans mon ~/.bash_aliases[4] :

function xpif () {
    if [ ! -z "${1}" ]; then
	CPATH="$(pwd)"
	ZNAME="$(basename "${1}")"
	UPATH="$(dirname "${1}")"
	ZARGS='-rT'
 
	cd "$1" && {
	    [[ -e "../${ZNAME}.xpi" ]] && {
		find "$(pwd)" \( -name ".DS_Store" -or -name ".Trashes" -or -name "._*" \) -exec rm -rf "{}" \; -prune 
 
		cp "../${ZNAME}.xpi" "$(pwd)"
		ZARGS='-urT'
	    }
 
	    zip "${ZARGS}" "${ZNAME}.xpi" * &&
	    mv "${ZNAME}.xpi" "../" || {
		rm "${ZNAME}.xpi"
		printf "  ${ZNAME}.xpi: does not need any change\n" >&1
	    }
	} && cd "$CPATH" || cd "$CPATH"
	return 0
     else
	printf "  xpif requires an argument\n" >&2
	return 1
     fi
}

Terminal de Mac OS X

la fonction reçoit simplement en argument le dossier à changer en xpi… en utilisant, évidemment, la commande zip.

RSS commentaires

  1. B
  2. 1
  3. O
  4. P
  5. 2
  6. 4

Pour valider le formulaire, saisissez les 3 derniers caractères de la série

  • caca
  • confused
  • cry
  • dizzy
  • happy
  • lol
  • neutral
  • omg
  • sad
  • smile
  • tongue
  • wink