J'ai essayer toutes vos solutions, l'idée était de rendre transparente cette fonctionnalité, avec la solution de niol j'ai un problème lorsque je passe des arguments a ls, avec celle de B. franck c'est en effet pas tout a fait ça, et avec celle de D B je dois changer mes habitude et utiliser "truc" lorsque je veux lister un répertoire, j'ai donc écrit un petit code perl qui joue l'intermédiaire :
$args .= "-a " if $a ;
$args .= "-l " if $l ;
$args .= "--color=$color " if $color ;
push @ARGV, "." unless @ARGV ; # pour qu'un ls sans arguments fonctionne aussi
system "/bin/cat @ARGV/$readme" if ( ! -l "@ARGV" && -e "@ARGV/$readme" ) ;
exec "/bin/ls $args @ARGV" ;
en enregistrant ce script dans /bin/lsreadme et en modifiant le .bashrc comme suit :
eval "`dircolors`"
export LS_OPTIONS='--color=auto'
export LS='/bin/lsreadme'
alias ls='$LS $LS_OPTIONS'
alias ll='$LS $LS_OPTIONS -l'
je n'ai repris que les arguments que j'utilise couramment, le script respecte les options fournies par la variable LS_OPTIONS, ce qui permet a l'occasion de lancer directement /bin/ls en utilisant aussi les options de LS_OPTIONS, il réagit assez bien, son utilisation semble réellement transparente pour l'utilisateur, il y a probablement moyen de faire mieux pour les arguments.
Je vais pouvoir documenter mes répertoires de script pour que dans 3 ans lorsque j'aurais oublier ce bidouillage j'utiliserais bêtement un "ls" je me souviendais de votre aide fraternel et je retrouverais aisément ce que je cherche...
twin2:~# ll /conf/twin2/scripts/mysql
--------------------------------------------------
-> update.pl
Met a jour les fichiers openDB.txt avec
les informations des fichiers config2.xml.
# Solution adoptée
Posté par tampax . En réponse au message readme automatique lors d'un ls. Évalué à 2.
#!/usr/bin/perl
use Getopt::Long;
my $readme = ".README" ;
my $a = '' ;
my $l = '' ;
my $color = '' ;
unshift @ARGV, $ENV{LS_OPTIONS} ;
GetOptions ( 'a' => \$a, 'l' => \$l, 'color=s' => \$color ) ;
$args .= "-a " if $a ;
$args .= "-l " if $l ;
$args .= "--color=$color " if $color ;
push @ARGV, "." unless @ARGV ; # pour qu'un ls sans arguments fonctionne aussi
system "/bin/cat @ARGV/$readme" if ( ! -l "@ARGV" && -e "@ARGV/$readme" ) ;
exec "/bin/ls $args @ARGV" ;
en enregistrant ce script dans /bin/lsreadme et en modifiant le .bashrc comme suit :
eval "`dircolors`"
export LS_OPTIONS='--color=auto'
export LS='/bin/lsreadme'
alias ls='$LS $LS_OPTIONS'
alias ll='$LS $LS_OPTIONS -l'
je n'ai repris que les arguments que j'utilise couramment, le script respecte les options fournies par la variable LS_OPTIONS, ce qui permet a l'occasion de lancer directement /bin/ls en utilisant aussi les options de LS_OPTIONS, il réagit assez bien, son utilisation semble réellement transparente pour l'utilisateur, il y a probablement moyen de faire mieux pour les arguments.
Je vais pouvoir documenter mes répertoires de script pour que dans 3 ans lorsque j'aurais oublier ce bidouillage j'utiliserais bêtement un "ls" je me souviendais de votre aide fraternel et je retrouverais aisément ce que je cherche...
twin2:~# ll /conf/twin2/scripts/mysql
--------------------------------------------------
-> update.pl
Met a jour les fichiers openDB.txt avec
les informations des fichiers config2.xml.
total 4
-rwxr-xr-x 1 root root 1540 2006年03月03日 09:16 update.pl
twin2:~#