Alias complexe

nico_devoluy -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Je cherche à définir un alias un peu évoluer pour la commande find.

# search the pattern : *pattern* or *Pattern* ... case insensitive, search also in the links (-follow)
alias findm find . -follow -iname "'*'\!:1'*'" -print
#ok, fonctionne. Il serait interressant de l'ameliorer en faisant en + un echo de la fonction.

Par exemple , l'alias suivant fonctionne
# search the exact pattern (also in the links -follow)
alias finde 'echo "---------"; echo "Command Exact Find : find . -print -name "\!*" "; echo "Result :"; echo "---------"; find . -follow -name "\!*" -print'

Voici ce que cela donne :
>finde read_me.txt
---------
Command Exact Find : find . -print -name read_me.txt
Result :
---------
./read_me.txt



Mais dans le premier alias, ce sont les ' et les " qui posent problemes. Il faut des ' autours des *
On ne peut donc pas mettre les '' autours des commandes definies par l'alias. Il ne peut donc y avoir qu'une commande.

c-a-d que l'on ne peut pas avoir ca :
alias findm 'echo "Command Magic Find" ; find . -follow -iname "'*'\!:1'*'" -print'

le systeme repond :
alias: No match.

Est-ce que vous auriez une solution ?

Merci
Nico_devoluy
Merci
A voir également:

2 réponses

judasperge Messages postés 153 Date d'inscription   Statut Membre Dernière intervention   35
 
et avec ` commande --param etc...` ?
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Salut,

Déjà c'est :

alias mon_alias='commande_à_rallonge'


Pour le reste autant définir une fonction dans le .bashrc à ce moment là :

ma_fonction () {
commande avec des quotes doubles "blablabla"
commande
commande avec des quotes simples 'blablabla'
commande
etc.
}
0