PATH & SHELL

Résolu
Bonjour, et bonne année à tous

j'ai deux questions :

1) J'ai une erreur dans ma variable PATH. Deux slashs se suivent, du genre "/usr/local/etq3//bin". $PATH m'affiche la valeur suivi du message d'erreur.
- J'ai regardé dans /etc/profile et dans /$HOME/.bash_profile et je n'ai rien vu qui la modifie comme ça.
- Elle est pratiquement d'origine, je l'ai juste modifiée ainsi : PATH=$PATH:/$HOME/bin

=> Si vous avez une idée pour modifier cette erreur?

2) A propos de la création de fichiers exécutables:
- Avec vi je crée mon script et je le rend exécutable : chmod +x monfichier.
- Quand je liste mes fichiers, je me retrouve avec deux fichiers éxécutables: monfichier* et monfichier~*

=> Pouvez vous m'expliquer pourquoi? Ca fait mal docteur?

Cdlt

Melwin
Configuration: Mandriva 2007

9 réponses

  1. Pan sur les doigts! Oui cette fois j'ai compris, je le savais pourtant, mais la facilité... J'apprends, merci de ton aide.

    Pour le grep PATH .bashrc, cela ne donne rien.
    1. Modérateur
      Salut,

      J'ai lu l'article, j'avais déjà lu des trucs similaires
      c'est bien ;-)
      en revanche j'ai l'impression que tu n'as pas compris

      Alors voilà, bonne lecture
      $PATH donne : -bash: /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games:/usr/lib/qt3//bin:/home/user/bin: Aucun fichier ou répertoire de ce type


      on ne tape pas $PATH dans une console (même si de cette façon tu vois le PATH)
      sous shell pour lire le contenu d'une VARIABLE on tape echo $VARIABLE

      Pour la variable PATH la commande d'affichage du contenu sera echo $PATH

      Affiche
      grep PATH .bashrc
      1. J'ai lu l'article, j'avais déjà lu des trucs similaires, mais merci beaucoup quand même:
        - Linux Ed CampusPress; Linux Initialisation et utilisation Ed DUNOD.

        Alors voilà, bonne lecture
        $PATH donne : -bash: /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/games:/usr/lib/qt3//bin:/home/user/bin: Aucun fichier ou répertoire de ce type

        :=> On remarque le double // entre qt3 et bin

        Et voilà mon fichier /etc/profile (j'ai même mis les commentaires)

        # /etc/profile -*- mode shell-script -*-
        # (c) MandrakeSoft , machin <machin@mandrake.com>
        loginsh=1
        # Users generally won't see annoyng core files
        [ "$UID "= "0" ] && ulimit -S -c 1000000 > /dev/null 2> &1
        if ! echo ${PATH} | grep -q /usr/X11R6/bin; then
        PATH="$PATH:/usr/X11R6/bin"
        fi

        if [ "$UID" -ge 500] && ! echo ${PATH} | grep -q /usr/games ; then
        PATH="$PATH:/usr/games"
        fi

        umask 022
        USER=`id -un`
        LOGNAME=$USER
        MAIL="/var/spool/mail/$USER"
        HISTCONTROL=ignoredups
        HOSTNAME=`bin/hostname`
        HISTSIZE=1000

        if [ -Z "$INPUTRC" -a ! -f "$HOME/.inputrc"] ; then
        INPUTRC=/etc/inputrc
        fi

        # Some hold programs still use it (eg: "man") and is also
        # required for level1 compliance for LI18NUX2000

        export PATH PS1 USER LOGNAME MAIL HOSTNAME
        export HISTCONTROL HISTSIZE

        for i in /etc/profile.d/*.sh ; do
        if [ -x $i ] ; then
        $i
        fi
        done

        unset ;
        1. Modérateur
          Déjà tu peux commencer lire l'article que je t'ai donné ;-)
          Ensuite tu peux afficher ici ton fichier /etc/profile (mais attention, la modification de /etc/profile est globale pour tous les utilisateurs)
          1. En fait, je n'ai pas de problème avec la variable $Home, c'est une erreur dans mon poste de départ. Je n'ai pas eu de problème pour ajouter $HOME/bin.

            C'est par défaut, dans ma variable, j'ai une partie qui se charge automatiquement :=> "/usr/local/etq3//bin".

            Et je ne trouve pas dans les fichiers /etc/profile ; /home/utilisateur/.bash_profile ; /home/user/.bashrc de ligne de commande ajoutant ces valeurs dans la variable PATH...
            1. Modérateur
              Salut,

              $HOME c'est une variable d'environnement qui contient le chemin complet de l'utilisateur /home/utilisateur
              donc tu dois faire
               export PATH=$PATH:$HOME/bin


              regarde ici, pour plus de détails La variable d'environnement PATH
              1. Contributeur
                hello
                il y a déja un / dans $HOME, c'est lui qui est en trop /$HOME

                dans vim:
                :set nobk
                1. Bjr,
                  Non ça ne fait pas mal !

                  1)
                  Les doubles // n'ont aucune conséquence, moi aussi ça ne me plaisait pas...
                  n'ayant pas trouvé... j'ai fini par forcer le PATH dans le .bashrc :
                  PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin

                  2) C'est une option de vi positionnée probablement dans le fichier .vimrc à la racine du compte
                  je ne me souviens pas son nom, elle à pour but de faire une sauvegarde du fichier dès qu'on fait un vi dessus, et qu'on est donc susceptible de le modifier.

                  voici mon .vimrc
                  set nu
                  set ts=4

                  nu c'est pour la numérotation des lignes
                  ts le nombre de caractères pour la tabulation

                  Slt