Variable PATH, virtualbox
mina
-
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Bonjour,
j'ai une virtualbox avec dessus ubuntu, je fais un ls -a dans mon shell mais je ne trouve pas mon fichier bash_profile, et ça me gêne bcp car je souhaiterais connaitre et modifier ma variable PATH, quelqu'un aurait il une idée?
merci
j'ai une virtualbox avec dessus ubuntu, je fais un ls -a dans mon shell mais je ne trouve pas mon fichier bash_profile, et ça me gêne bcp car je souhaiterais connaitre et modifier ma variable PATH, quelqu'un aurait il une idée?
merci
A voir également:
- Variable PATH, virtualbox
- Virtualbox - Télécharger - Émulation & Virtualisation
- Path of exile 2 - Guide
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp ✓ - Forum Word
- Ctrl alt suppr virtualbox ✓ - Forum Windows
- Vba range avec variable ✓ - Forum VB / VBA
13 réponses
Oui mais c'est étrange comme réponse car j'aimerais savoir dans quel fichier se trouve ma variable path, elle est pas dans bashrc j'ai été voir donc c'est ennuyeux :-)...
et bien je veux connaitre la valeur de ma variable PATH autre que par echo $PATH, donc je souhaite absolument accéder au fichier où est stockée la valeur de PATH pour ensuite la modifier à ma guise et faire des tests, elle doit bien être quelque part...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
si j'ai bien un .profile mais en l'éditant j'ai aucune ligne PATH:....bref je cherche le fichier où est cette fameuse variable PATH, elle doit bien être quelque part...
./.profile:19:# set PATH so it includes user's private bin if it exists
./.profile:21: PATH="$HOME/bin:$PATH"
./.profile:21: PATH="$HOME/bin:$PATH"
./updatedb.conf:3:PRUNEPATHS="/tmp /var/spool /media" ./cron.d/anacron:4:PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ./gconf/2/path:23:include $(ENV_MANDATORY_PATH) ./gconf/2/path:36:include $(ENV_DEFAULTS_PATH) ./ppp/ip-up:21:PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin ./ppp/ip-up:22:export PATH ./ppp/ipv6-up:13:PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin ./ppp/ipv6-up:14:export PATH ./ppp/ip-down:21:PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin ./ppp/ip-down:22:export PATH ./ppp/ip-up.d/0dns-up:30:PATH=/sbin:/bin:/usr/sbin:/usr/bin ./ppp/pppoe_on_boot:3:PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin ./ppp/pppoe_on_boot:4:export PATH ./ppp/ipv6-down:13:PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin ./ppp/ipv6-down:14:export PATH ./wpa_supplicant/functions.sh:716: wpa_cli_do "$IF_WPA_CA_PATH" ascii \ ./wpa_supplicant/functions.sh:740: wpa_cli_do "$IF_WPA_CA_PATH2" ascii \ ./wpa_supplicant/action_wpa.sh:10:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./crontab:8:PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ./X11/Xsession.d/20x11-common_process-args:48: STARTUP_FULL_PATH=$(/usr/bin/which "${1%% *}" || true) ./X11/Xsession.d/20x11-common_process-args:49: if [ -n "$STARTUP_FULL_PATH" ] && [ -e "$STARTUP_FULL_PATH" ]; then ./X11/Xsession.d/20x11-common_process-args:50: if [ -x "$STARTUP_FULL_PATH" ]; then ./X11/Xsession.d/70gconfd_path-on-session:6: export MANDATORY_PATH=${GCONF_PREFIX}/${GDMSESSION}.mandatory.path ./X11/Xsession.d/70gconfd_path-on-session:7: export DEFAULTS_PATH=${GCONF_PREFIX}/${GDMSESSION}.default.path ./bash_completion:173: PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin type $1 &>/dev/null && ./bash_completion:738: local PATH="$PATH:/sbin:/usr/sbin" ./bash_completion:802: COMPREPLY=( $( eval PATH="$PATH:/sbin" $cmd 2>/dev/null | \ ./bash_completion:976: COMPREPLY=( $( compgen -W "$( PATH="$PATH:/sbin" lsmod | \ ./bash_completion:1049:# - stdout: Filename of command in PATH with possible symbolic links resolved. ./bash_completion:1101: "$( PATH="$PATH:/sbin" lspci -n | awk '{print $3}')" -- "$cur" ) ) ./bash_completion:1109: "$( PATH="$PATH:/sbin" lsusb | awk '{print $6}' )" -- "$cur" ) ) ./bash_completion:1345:# This meta-cd function observes the CDPATH variable, so that cd additionally ./bash_completion:1346:# completes on directories under those specified in CDPATH. ./bash_completion:1362: # Use standard dir completion if no CDPATH or parameter starts with /, ./bash_completion:1364: if [[ -z "${CDPATH:-}" || "$cur" == ?(.)?(.)/* ]]; then ./bash_completion:1372: # we have a CDPATH, so loop on its contents ./bash_completion:1373: for i in ${CDPATH//:/$'\t'}; do ./bash_completion:1500: local PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin ./gre.d/1.9.2.13.system.conf:2:GRE_PATH=/usr/lib/xulrunner-1.9.2.13 ./udev/rules.d/70-persistent-cd.rules:8:SUBSYSTEM=="block", ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:01.1-scsi-1:0:0:0", SYMLINK+="cdrom", ENV{GENERATED}="1" ./udev/rules.d/70-persistent-cd.rules:9:SUBSYSTEM=="block", ENV{ID_CDROM}=="?*", ENV{ID_PATH}=="pci-0000:00:01.1-scsi-1:0:0:0", SYMLINK+="dvd", ENV{GENERATED}="1" ./grub.d/20_memtest86+:24: MEMTESTPATH=$( make_system_path_relative_to_its_root "/boot/memtest86+.bin" ) ./grub.d/20_memtest86+:25: echo "Found memtest86+ image: $MEMTESTPATH" >&2 ./grub.d/20_memtest86+:31: $LX $MEMTESTPATH ./grub.d/20_memtest86+:37: $LX $MEMTESTPATH console=ttyS0,115200n8 ./grub.d/20_memtest86+:43:# MEMTESTPATH=$( make_system_path_relative_to_its_root "/boot/memtest86+_multiboot.bin" ) ./grub.d/20_memtest86+:44:# echo "Found memtest86+ multiboot image: $MEMTESTPATH" >&2 ./grub.d/20_memtest86+:50:# multiboot $MEMTESTPATH ./grub.d/20_memtest86+:56:# multiboot $MEMTESTPATH console=ttyS0,115200n8 ./grub.d/00_header:143: prepare_grub_to_access_device '${grub_probe} --target=device "${GRUB_FONT_PATH}"' ./grub.d/00_header:146:if loadfont 'make_system_path_relative_to_its_root "${GRUB_FONT_PATH}"' ; then ./login.defs:4:# Three items must be defined: MAIL_DIR, ENV_SUPATH, and ENV_PATH. ./login.defs:99:# *REQUIRED* The default PATH settings, for superuser and normal users. ./login.defs:102:ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ./login.defs:103:ENV_PATH PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games ./login.defs:319:#CRACKLIB_DICTPATH ./avahi/avahi-autoipd.action:31:PATH="$PATH:/usr/bin:/usr/sbin:/bin:/sbin" ./apparmor/subdomain.conf:49:#SUBDOMAIN_PATH=XXXX ./apparmor/subdomain.conf:54:#SUBDOMAIN_PATH=/etc/subdomain.d ./network/if-up.d/ntpdate:5:PATH=/sbin:/bin:/usr/sbin:/usr/bin ./bash_completion.d/wol:17: COMPREPLY=( $( PATH=$PATH:/sbin ifconfig -a 2>/dev/null | \ ./bash_completion.d/sitecopy:16: awk '{sub (/=(FILE|PATH)/, "", $2); print $2}')" -- "$cur" ) ) ./bash_completion.d/ssh:9: "$( PATH="$PATH:/sbin" ifconfig -a | \ ./bash_completion.d/java:25: [ -z "$classpath" ] && classpath=$CLASSPATH ./bash_completion.d/tar:62:[ -n "${COMP_TAR_INTERNAL_PATHS:-}" ] && complete -F _tar -o dirnames tar || ./bash_completion.d/gdb:16: COMPREPLY=( $( PATH="$PATH:." compgen -d -c -- "$cur" ) ) ./bash_completion.d/gdb:23: sed -e 's/:\{2,\}/:/g' -e 's/^://' -e 's/:$//' <<<"$PATH" ) ) ./bash_completion.d/info:21: if [ "${INFOPATH: -1:1}" == ':' ]; then ./bash_completion.d/info:22: infopath=${INFOPATH}${infopath} ./bash_completion.d/info:23: elif [ ${INFOPATH:+set} ]; then ./bash_completion.d/info:24: infopath=$INFOPATH ./bash_completion.d/man:33: manpath=$MANPATH ./environment:1:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" ./manpath.config:5:# their PATH environment variable. For details see the manpath(5) man page. ./manpath.config:12:# MANDATORY_MANPATH manpath_element ./manpath.config:13:# MANPATH_MAP path_element manpath_element ./manpath.config:16:# every automatically generated MANPATH includes these fields ./manpath.config:18:#MANDATORY_MANPATH /usr/src/pvm3/man ./manpath.config:20:MANDATORY_MANPATH /usr/man ./manpath.config:21:MANDATORY_MANPATH /usr/share/man ./manpath.config:22:MANDATORY_MANPATH /usr/local/share/man ./manpath.config:24:# set up PATH to MANPATH mapping ./manpath.config:27:# *PATH* -> *MANPATH* ./manpath.config:29:MANPATH_MAP /bin /usr/share/man ./manpath.config:30:MANPATH_MAP /usr/bin /usr/share/man ./manpath.config:31:MANPATH_MAP /sbin /usr/share/man ./manpath.config:32:MANPATH_MAP /usr/sbin /usr/share/man ./manpath.config:33:MANPATH_MAP /usr/local/bin /usr/local/man ./manpath.config:34:MANPATH_MAP /usr/local/bin /usr/local/share/man ./manpath.config:35:MANPATH_MAP /usr/local/sbin /usr/local/man ./manpath.config:36:MANPATH_MAP /usr/local/sbin /usr/local/share/man ./manpath.config:37:MANPATH_MAP /usr/X11R6/bin /usr/X11R6/man ./manpath.config:38:MANPATH_MAP /usr/bin/X11 /usr/X11R6/man ./manpath.config:39:MANPATH_MAP /usr/games /usr/share/man ./manpath.config:40:MANPATH_MAP /opt/bin /opt/man ./manpath.config:41:MANPATH_MAP /opt/sbin /opt/man ./manpath.config:64:# *MANPATH* -> *CATPATH* ./anacrontab:6:PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ./gdm/PreSession/Default:9:PATH="/usr/bin:$PATH" ./gdm/Init/Default:6:PATH="/usr/bin:$PATH" ./gdm/Init/Default:20: for dir in $PATH ./gdm/Xsession:61: for dir in $PATH ./skel/.profile:19:# set PATH so it includes user's private bin if it exists ./skel/.profile:21: PATH="$HOME/bin:$PATH" ./init.d/single:11:PATH=/sbin:/bin ./init.d/fancontrol:16:PATH=/bin:/usr/bin:/sbin:/usr/sbin ./init.d/killprocs:11:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/vboxadd-service:28:PATH=$PATH:/bin:/sbin:/usr/sbin ./init.d/reboot:12:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/umountnfs.sh:15:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/saned:16:PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ./init.d/halt:14:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/ondemand:12:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/rsync:61:export PATH="${PATH:+$PATH:}/usr/sbin:/sbin" ./init.d/umountfs:12:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/binfmt-support:13:PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ./init.d/urandom:15:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/x11-common:13:PATH=/bin:/sbin ./init.d/rc:16:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/rc:17:export PATH ./init.d/unattended-upgrades:15:PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin ./init.d/stop-bootlogd-single:19:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/rc.local:12:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/sendsigs:12:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/umountroot:12:PATH=/sbin:/bin ./init.d/lm-sensors:16:PATH=/bin:/usr/bin:/sbin:/usr/sbin ./init.d/bootlogd:14:PATH=/sbin:/bin # No remote fs at start ./init.d/bootlogd:48: # PATH is set above ./init.d/bootlogd:63: PATH=/bin:/sbin:/usr/bin:/usr/sbin ./init.d/vboxadd-x11:31:PATH=$PATH:/bin:/sbin:/usr/sbin ./init.d/networking:11:PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin" ./init.d/vboxadd:31:PATH=$PATH:/bin:/sbin:/usr/sbin ./init.d/dns-clean:24:PATH=/sbin:/bin:/usr/sbin:/usr/bin ./init.d/skeleton:20:# PATH should only include /usr/* if it runs after the mountnfs.sh script ./init.d/skeleton:21:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./init.d/pulseaudio:19:PATH=/sbin:/bin:/usr/sbin:/usr/bin ./init.d/speech-dispatcher:15:PATH=/sbin:/bin:/usr/sbin:/usr/bin ./security/pam_env.conf:18:# be useful to be set: NNTPSERVER, LESS, PATH, PAGER, MANPAGER ..... ./security/pam_env.conf:65:#PATH DEFAULT=${HOME}/bin:/usr/local/bin:/bin\ ./apm/event.d/ppp:6:PATH=/sbin:/usr/sbin:/bin:/usr/bin ./pm/sleep.d/10_unattended-upgrades-hibernate:10:PATH=/sbin:/usr/sbin:/bin:/usr/bin
ok merci bcp, et si par exemple je veux rajouter un répertoire genre /home/toto/titi je fais comme ça:
./environment:1:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/toto/titi"
./environment:1:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/toto/titi"
je me suis mal exprimée: si j'écrit ceci dans un script: PATH=$PATH:/usr/local/bin
Ca veut dire qu'on supprime entièrement l'ancien PATH ou alors qu'on ajouter juste le chemin /usr/local/bin à l'ancien PATH?
Ca veut dire qu'on supprime entièrement l'ancien PATH ou alors qu'on ajouter juste le chemin /usr/local/bin à l'ancien PATH?
d'accord, et dans un script test.sh si j'ai mettons la commande ./toto.sh, et que j'ai un fichier toto.sh dans le répertoire à partir duquel j'exécute le script et un autre fichier toto.sh dans usr/bin/local par exemple, mon script test.sh va exécuter le fichier toto du répertoire courant ou du répertoire usr/bin/local?
Je demande car je peux pas tester ça chez moi...
Je demande car je peux pas tester ça chez moi...
Salut,
lami20j@debian-acer:~$ echo $PATH /home/lami20j/bin:/usr/local/bin:/usr/bin:/bin:/usr/games lami20j@debian-acer:~$ cat /home/lami20j/bin/prog.sh #!/bin/bash echo "je suis dans /home/lami20j/bin" lami20j@debian-acer:~$ cat /usr/local/bin/prog.sh #!/bin/bash echo "je suis dans /usr/local/bin/" lami20j@debian-acer:~$ prog.sh je suis dans /home/lami20j/bin lami20j@debian-acer:~$ /usr/local/bin/prog.sh je suis dans /usr/local/bin/
je ne sais pas mais dans mon cas, j'ai un fichier toto qui se trouve dans un repertoire du path et un autre dans le repertoire courant (qui n'est pas dans le path mais à partir duquel est exécuté test), donc quel sera finalement le chemin absolu du fichier toto choisi lors de l'exécution de test? Exemple:
/home/mina/test.sh toto.sh
/usr/local/bin/toto.sh
PATH= /usr/local/bin
Je suis dans home/mina et je tape ./test.sh, quel sera le fichier toto exécuté, celui du repertoire home ou celui de usr/local/bin?
/home/mina/test.sh toto.sh
/usr/local/bin/toto.sh
PATH= /usr/local/bin
Je suis dans home/mina et je tape ./test.sh, quel sera le fichier toto exécuté, celui du repertoire home ou celui de usr/local/bin?
re, euh désolée mais aucune de vos solutions ne marchent, j'ai crée un mini script shell dans un répertoire, j'ai ajouté
PATH="$PATH:/home/mina/Scripts"
export PATH
dans mon bashrc et quand je tape script.sh n'importe où dans ma virtualbox c'est tjs commande introuvable...
j'ai modifié aussi le fichier environment et même résultat...
un spécialiste du PATH sur ce site svp?
PATH="$PATH:/home/mina/Scripts"
export PATH
dans mon bashrc et quand je tape script.sh n'importe où dans ma virtualbox c'est tjs commande introuvable...
j'ai modifié aussi le fichier environment et même résultat...
un spécialiste du PATH sur ce site svp?
Salut,
quand je tape script.sh n'importe où
Justement, ce n'est pas n'importe où.
Ne mélange pas le système installé dans Virtual Box avec le système hôte.
Bref voici un exemple, et ça marche
Création de script et exécution
On voit que la commande script.sh est introuvable, en revanche on a vu que le script s'exécute (voir en gras)
PATH
:~$ echo $PATH
/home/lami20j/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
:~$ export PATH=/home/lami20j/Scripts:$PATH
:~$ echo $PATH
/home/lami20j/Scripts:/home/lami20j/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
Au début le répertoire Scripts n'est pas dans PATH, après l'ajout on affiche à nouveau PATH et on vois le nouveau répertoire ajouté (en gras)
La commande script.sh
Quelque soit l'endroit où je me trouve la commande script.sh s'exécute
Petite lecture La variable d'environnement PATH
quand je tape script.sh n'importe où
Justement, ce n'est pas n'importe où.
Ne mélange pas le système installé dans Virtual Box avec le système hôte.
Bref voici un exemple, et ça marche
Création de script et exécution
:~$ :~$ mkdir -v Scripts mkdir: création du répertoire « Scripts » :~$ cd Scripts/ :~/Scripts$ ls -l total 0 :~/Scripts$ echo -e '#!/bin/bash\necho Here script.sh' > script.sh :~/Scripts$ ls -l total 4 -rw-r--r-- 1 lami20j lami20j 32 14 mars 18:25 script.sh :~/Scripts$ cat script.sh #!/bin/bash echo Here script.sh :~/Scripts$ chmod -v +x script.sh le mode de « script.sh » a été modifié en 0755 (rwxr-xr-x). :~/Scripts$ ./script.sh Here script.sh :~/Scripts$ cd :~$ script.sh bash: script.sh : commande introuvable
On voit que la commande script.sh est introuvable, en revanche on a vu que le script s'exécute (voir en gras)
PATH
:~$ echo $PATH
/home/lami20j/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
:~$ export PATH=/home/lami20j/Scripts:$PATH
:~$ echo $PATH
/home/lami20j/Scripts:/home/lami20j/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
Au début le répertoire Scripts n'est pas dans PATH, après l'ajout on affiche à nouveau PATH et on vois le nouveau répertoire ajouté (en gras)
La commande script.sh
Quelque soit l'endroit où je me trouve la commande script.sh s'exécute
:~$ script.sh Here script.sh :~$ cd Scripts/ :~/Scripts$ script.sh Here script.sh :~/Scripts$ cd /tmp/ :/tmp$ script.sh Here script.sh
Petite lecture La variable d'environnement PATH