IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

comment creer un alias pour un repertoire dans unix


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 46
    Par défaut comment creer un alias pour un repertoire dans unix
    hello

    je suis débutante pour Unix et Lunix

    j'ai rencontré une petite souci,

    je voudrais creer un alias $UGL_TOP pour un repertoire dans unix
    /datadev/appdev/devappl/ugl/11.5.0/

    comme cela,
    quand je type il se positionne directement dans
    /datadev/appdev/devappl/ugl/11.5.0/

    Merci

    Yingnan

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    tu as la commande ln avec l'option -s.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ln -s /chemin/physique /chemin/raccourcis

  3. #3
    Rédacteur
    Avatar de lavazavio
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 673
    Par défaut
    Pour créer des alias permanents dans ton shell, il faut éditer le fichier .bashrc qui se trouve à la racine de ton home et ajouter la définition de l'alias comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #nano /home/ton_user/.bashrc
     
    #Définition de l'alias
    alias al='ls -al'
    Pour qu'il soit pris en compte, il faut te reloguer.
    Maintenant, quand tu tapes "al" dans ton shell, cela exécute la commande "ls -al".
    Rédacteur et Modérateur rubriques Linux et Virtualisation
    Mes Articles
    N'oubliez pas de consulter les FAQ Linux et les cours et tutoriels Linux
    N'oubliez pas de consulter les FAQ virtualisation et les cours et tutoriels Virtualisation
    Man pages en français

  4. #4
    Membre éclairé
    Avatar de MaliciaR
    Inscrit en
    Juillet 2008
    Messages
    513
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Juillet 2008
    Messages : 513
    Par défaut
    Citation Envoyé par D[r
    eadLock;4257600]mais ce n'est pas un "alias", juste un variable d'environnement.
    Mouais, faudrait refaire l'export à chaque démarrage de la console


    Sinon, les liens symboliques comme propose Mygale est le mieux à faire Ptet rajouter l'option -v :
    (et voir man ln pour plus d'infos)
    Le tact dans l'audace c'est de savoir jusqu'où on peut aller trop loin. Cocteau
    L'abjection la plus totale, ce n'est pas de trahir, c'est de ne jamais donner un commencement de réalité à ses rêves les plus fous. M. Moreau


    Les indispensables : Les règles, , FAQ et tutos avant de poster, et !
    Traduction de Linux Device Drivers 3 : venez participer
    membre de l'April - Promouvoir et défendre les logiciels libres

  5. #5
    Membre averti
    Inscrit en
    Février 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 46
    Par défaut ln -sv ne marche pas.....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    [dbadev@chagall ~]$ ln -sv /usr ESSAI1_TOP
    création du lien symbolique `ESSAI1_TOP' vers `/usr'
    [dbadev@chagall ~]$ cd $ESSAI1_TOP
    [dbadev@chagall ~]$ pwd
    /home/dbadev
    [dbadev@chagall ~]$ apora
    [dbadev@chagall ~]$ cd $ESSAI1_TOP
    [dbadev@chagall ~]$ pwd
    /home/dbadev
    Bonjour, tout le monde, le création du lien symbolique ne marche pas comme cité au dessus.
    chaque fois, je type cd $ESSAI1_TOP, il revient ver /home/dbadev
    .......

    Par comtre, Export marche bien , mais comme vous avez dit, chaque fois quand je reconnecte sur la base, il faut redéfinir ce lien.

    Merci

    Yingnan

  6. #6
    Invité
    Invité(e)
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [dbadev@chagall ~]$ ln -sv /usr ESSAI1_TOP
    création du lien symbolique `ESSAI1_TOP' vers `/usr'
    [dbadev@chagall ~]$ cd $ESSAI1_TOP
    Si tu crées un lien symbolique, il ne faut pas utiliser le $ -> le lien symbolique n'est pas une variable d'environnement!

  7. #7
    Rédacteur
    Avatar de lavazavio
    Homme Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 673
    Par défaut
    Les liens symboliques (ln -s) sont un peu comme les raccourcis sous windows. Ce sont des fichiers qui pointent vers un autre fichier ou dossier.

    D'abord, pour créer des liens symboliques, il est préférable d'utiliser les chemins absolus dans toutes les occurences de la commande.

    Autrement, c'est normal que ca ne fonctionne pas. Pour entrer dans /usr par ton lien, il faut entrer dans le lien comme s'il s'agissait d'un vrai dossier. Donc il ne faut pas utiliser "$", ce n'est pas une variable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ln -sv /usr /home/dbadev/ESSAI1_TOP
    cd ESSAI1_TOP
    Rédacteur et Modérateur rubriques Linux et Virtualisation
    Mes Articles
    N'oubliez pas de consulter les FAQ Linux et les cours et tutoriels Linux
    N'oubliez pas de consulter les FAQ virtualisation et les cours et tutoriels Virtualisation
    Man pages en français

  8. #8
    Membre très actif

    Homme Profil pro
    Responsable projets techniques
    Inscrit en
    Février 2003
    Messages
    980
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable projets techniques
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Février 2003
    Messages : 980
    Par défaut
    Citation Envoyé par kinkichin Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    [dbadev@chagall ~]$ ln -sv /usr ESSAI1_TOP
    création du lien symbolique `ESSAI1_TOP' vers `/usr'
    [dbadev@chagall ~]$ cd $ESSAI1_TOP
    [dbadev@chagall ~]$ pwd
    /home/dbadev
    [dbadev@chagall ~]$ apora
    [dbadev@chagall ~]$ cd $ESSAI1_TOP
    [dbadev@chagall ~]$ pwd
    /home/dbadev
    Bonjour, tout le monde, le création du lien symbolique ne marche pas comme cité au dessus.
    chaque fois, je type cd $ESSAI1_TOP, il revient ver /home/dbadev
    .......

    Par comtre, Export marche bien , mais comme vous avez dit, chaque fois quand je reconnecte sur la base, il faut redéfinir ce lien.

    Merci

    Yingnan
    Déjà, petite précision : dans ce post, sont confondus alias, liens symbolique et variables d'environnement !

    Je t'invite à chercher les définitions correctes (pistes sous wikipedia ci-dessous) :
    http://fr.wikipedia.org/wiki/Alias_(informatique)
    http://fr.wikipedia.org/wiki/Lien_symbolique
    http://fr.wikipedia.org/wiki/Variable_d%27environnement

    Donc, un lien symbolique, c'est un peu comme un raccourci sous windows : tu vas créer un fichier qui va "pointer" vers un autre fichier.

    Par exemple, ta première commande va créer un lien symbolique (un fichier en quelque sorte) appelé ESSAI1_TOP dans le répertoire courant. Ce lien pointant vers /usr.
    Après, il faut faire cd ESSAI1_TOP et non cd $ESSAI1_TOP car il s'agit bien d'un lien qui fonctionne en fait exactement comme un répertoire classique ! Mais cette commande cd ESSAI1_TOP ne fonctionnera que si tu es dans le répertoire où tu as créer ton lien (en l'occurrence ton répertoire home : /home/dbadev). Tu peux aussi faire cd /home/dbadev/ESSAI1_TOP

    Pour utiliser la commande cd $ESSAI1_TOP, il faut que $ESSAI1_TOP signifie quelque chose. Or, le $ identifie ici une variable d'environnement qu'il faut définir.
    Pour cela, comme il a été expliqué, c'est la commande export qui est utilisée. Tu peux ajouter export UGL_TOP=/usr dans un .profile, un .bashrc, un /etc/profile, bref, tout fichier de configuration lancé au démarrage d'un shell ! Ainsi, cette variable sera automatiquement définie dés que tu ouvriras ton nouveau shell.

    Pour les alias, enfin, la commande serait du type cdESSAI1_TOP (attaché). Et la définition de cet alias serait alias cdESSAI1_TOP="cd /usr" par exemple. (Toujours à ajouter à un fichier type /etc/profile pour en profiter à chaque nouveau shell). Cette commande, tout comme celle utilisant les variables pouvant être utilisée de n'importe où puisqu'elle manipule un chemin absolu.

    Pour terminer, dans ton exemple, cd $ESSAI1_TOP te renvoi dans ton répertoire home car $ESSAI1_TOP n'est pas défini. Cette commande est donc équivalente à cd seul !

  9. #9
    Membre averti
    Inscrit en
    Février 2009
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 46
    Par défaut
    Citation Envoyé par Alek-C Voir le message
    Déjà, petite précision : dans ce post, sont confondus alias, liens symbolique et variables d'environnement !

    Je t'invite à chercher les définitions correctes (pistes sous wikipedia ci-dessous) :
    http://fr.wikipedia.org/wiki/Alias_(informatique)
    http://fr.wikipedia.org/wiki/Lien_symbolique
    http://fr.wikipedia.org/wiki/Variable_d%27environnement

    Donc, un lien symbolique, c'est un peu comme un raccourci sous windows : tu vas créer un fichier qui va "pointer" vers un autre fichier.

    Par exemple, ta première commande va créer un lien symbolique (un fichier en quelque sorte) appelé ESSAI1_TOP dans le répertoire courant. Ce lien pointant vers /usr.
    Après, il faut faire cd ESSAI1_TOP et non cd $ESSAI1_TOP car il s'agit bien d'un lien qui fonctionne en fait exactement comme un répertoire classique ! Mais cette commande cd ESSAI1_TOP ne fonctionnera que si tu es dans le répertoire où tu as créer ton lien (en l'occurrence ton répertoire home : /home/dbadev). Tu peux aussi faire cd /home/dbadev/ESSAI1_TOP

    Pour utiliser la commande cd $ESSAI1_TOP, il faut que $ESSAI1_TOP signifie quelque chose. Or, le $ identifie ici une variable d'environnement qu'il faut définir.
    Pour cela, comme il a été expliqué, c'est la commande export qui est utilisée. Tu peux ajouter export UGL_TOP=/usr dans un .profile, un .bashrc, un /etc/profile, bref, tout fichier de configuration lancé au démarrage d'un shell ! Ainsi, cette variable sera automatiquement définie dés que tu ouvriras ton nouveau shell.

    Pour les alias, enfin, la commande serait du type cdESSAI1_TOP (attaché). Et la définition de cet alias serait alias cdESSAI1_TOP="cd /usr" par exemple. (Toujours à ajouter à un fichier type /etc/profile pour en profiter à chaque nouveau shell). Cette commande, tout comme celle utilisant les variables pouvant être utilisée de n'importe où puisqu'elle manipule un chemin absolu.

    Pour terminer, dans ton exemple, cd $ESSAI1_TOP te renvoi dans ton répertoire home car $ESSAI1_TOP n'est pas défini. Cette commande est donc équivalente à cd seul !

    c'est bien précis et claire, Merci pour votre aide! je le comprends beaucoup mieux!!!

  10. #10
    Membre émérite
    Avatar de D[r]eadLock
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    504
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 504
    Par défaut
    sinon, juste un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    export UGL_TOP=/datadev/appdev/devappl/ugl/11.5.0/
    fera l'affaire (en bash), mais ce n'est pas un "alias", juste un variable d'environnement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment creer un ocx pour appel dans page html
    Par minette dans le forum VB 6 et antérieur
    Réponses: 26
    Dernier message: 19/07/2006, 12h21
  2. Réponses: 11
    Dernier message: 01/03/2006, 10h32
  3. [Sécurité] Créer des alias pour apache sur lycos
    Par Furius dans le forum Langage
    Réponses: 11
    Dernier message: 10/01/2006, 18h34
  4. [Sessions] Comment creer des sessions pour chaque visiteur
    Par developower dans le forum Langage
    Réponses: 2
    Dernier message: 06/10/2005, 12h55
  5. comment creer un alias dynamique avec BDE et ODBC
    Par david33 dans le forum C++Builder
    Réponses: 2
    Dernier message: 12/07/2002, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo