web-dev-qa-db-fra.com

Bash: variable de répertoire en cours

Ce que j'essaie de faire, c'est de trouver le répertoire de travail actuel et de le sauvegarder dans une variable, afin de pouvoir exécuter export PATH=$PATH:currentdir+somethingelse. : s n'est pas tout à fait sûr s'ils ont une variable qui contient cwd par défaut.

79
Stupid.Fat.Cat

Cela enregistre le chemin absolu du répertoire de travail actuel dans la variable cwd:

cwd=$(pwd)

Dans votre cas, vous pouvez simplement faire:

export PATH=$PATH:$(pwd)+somethingelse
147
sampson-chen

J'ai le suivant dans mon .bash_profile:

function mark {
    export $1=`pwd`;
}

aussi, chaque fois que je veux me souvenir d'un répertoire, je peux simplement taper, par exemple. marquez là .

Puis, quand je veux retourner à cet endroit, je tape simplement cd $ là

18
gerardw

Votre affectation a un $ supplémentaire:

export PATH=$PATH:${PWD}:/foo/bar
3
chepner

pour un relatif answer, utilisez .

test avec:

$ myDir=.
$ ls $myDir
$ cd /
$ ls $myDir

La première ls vous montrera tout dans le répertoire actuel, la seconde tout dans le répertoire racine (/).

3
mcalex

Une autre variante:

export PATH=$PATH:\`pwd`:/foo/bar
1
theme

Vous pouvez utiliser la variable PWD intégrée au shell, comme ceci:

export PATH=$PATH:$PWD+somethingelse
0
simmerlee

variable de répertoire de travail en cours, à savoir chemin complet/home/dev/other

dir=$PWD

imprimer le chemin complet

echo $dir
0
Piyush Sharma