Page 1 sur 1

[alias]apostrophe alias

Publié : mar. 04 nov. 2014, 15:23
par AchilleFraisse
Bonjour,
Je souhaire mettre un alias dans mon fichier .bashrc, mais cette alias comporte des apostrophe. Or c'est la carctère pour délimiter l'alias. Donc comment puis-je faire ?
Par exemple je veux faire alias='mon'alias' et l'apostrophe du milieu il le prend comme la fin de l'alias

Re: [alias]apostrophe alias

Publié : mar. 04 nov. 2014, 15:48
par benjarobin
Il suffit de l'échapper, via \

Re: [alias]apostrophe alias

Publié : mar. 04 nov. 2014, 15:51
par AchilleFraisse
D'accord, merci.
Et est-ce qu'on peut faire dépendre notre alias d'un paramètre ? Par exemple (exemple idiot mais je n'en ai pas d'autre), je fait :

Code : Tout sélectionner

alias creerfichier='touch nom_fichier'[\code]
et lorsque je tape la commande creerfichier avec un nom de fichier, il remplace nom_fichier par le nom de fichier que j'ai mis ?

Re: [alias]apostrophe alias

Publié : mar. 04 nov. 2014, 15:55
par benjarobin
Un alias fait un remplacement stricte.
Donc si tu as l'alias suivant :

Code : Tout sélectionner

alias creerfichier='touch nom_fichier'
Si tu tapes dans le terminal : creerfichier test.txt, c'est équivalent à

Code : Tout sélectionner

touch nom_fichier test.txt
Je pense que ce n'est pas ce que tu veux...

Re: [alias]apostrophe alias

Publié : mar. 04 nov. 2014, 16:08
par mulanee
Sous dos il fallait mettre %1 après la commande pour attendre une intervention clavier :mrgreen:

Re: [alias]apostrophe alias

Publié : mar. 04 nov. 2014, 17:31
par papajoke
AchilleFraisse a écrit :est-ce qu'on peut faire dépendre notre alias d'un paramètre ?
Bonjour,
a la place d'un alias, tu peux créer une fonction , par exemple:

Code : Tout sélectionner

function creerfichier(){
    $fichier=$1
    if [ -n $fichier ] ; then
        echo 'ERREUR : pas de parametre !' 
        $fichier='~/fichier_par_defaut.txt'
    fi
    touch $fichier
}
function creerfile(){
    if [ -f $1 ] ; then
        echo 'ERREUR : fichier existe deja :(' 
    else
        touch $1
    fi
}

Re: [alias]apostrophe alias

Publié : mar. 04 nov. 2014, 17:38
par Moviuro
Faites gaffe au code... guillemets partout et c'est mieux de mettre les sorties erreur dans stderr... ;)

Code : Tout sélectionner

function creerfichier(){
    fichier="$1"
    if [ -n "$fichier" ] ; then
        echo 'ERREUR : pas de parametre !' >&2
        fichier='~/fichier_par_defaut.txt'
    fi
    touch "$fichier"
}
function creerfile(){
    if [ -f "$1" ] ; then
        echo 'ERREUR : fichier existe deja :(' >&2
    else
        touch "$1"
    fi
}