2010-11-12 23 views
1

J'essaie d'installer PETSc sur mon ordinateur portable Ubuntu. La première étape de l'installation consiste à appeler les commandes suivantes dans le répertoire de niveau supérieur du répertoire PETSc du terminal. Question 1: Dois-je entrer le mot «PWD» ou l'adresse du répertoire PETSc de niveau supérieur?mot-clé d'exportation dans les scripts BASH

Question 2: Ce que je voulais comprendre ce que le mot-clé d'exportation fait en général et en particulier ce qu'il fait dans l'exemple. J'ai regardé quelques références sur le mot-clé d'exportation et tous n'ont pas vraiment expliqué clairement. Probablement j'ai regardé dans les mauvais endroits.

Je n'ai jamais fait de script shell, donc une réponse détaillée serait très utile ... Merci beaucoup !!

Répondre

3

Tout ce que export fait est de rendre la valeur d'une variable d'environnement disponible pour les processus enfants.

Dans ce cas, ils supposent que vous êtes dans le répertoire de niveau supérieur du répertoire PETSc. Donc, en utilisant $ PWD (imprimer le répertoire de travail) est juste un raccourci afin que vous n'ayez pas à taper le chemin. L'effet doit être identique:

[[email protected] PETSc_1_1_1_1]$ pwd 
/home/jm72/soft/PETSc_1_1_1_1 
[[email protected] PETSc_1_1_1_1]$ export PETSC_DIR=$PWD 
[[email protected] PETSc_1_1_1_1]$ echo $PETSC_DIR 
/home/jm72/soft/PETSc_1_1_1_1 
[[email protected] PETSc_1_1_1_1]$ export PETSC_DIR=/home/jm72/soft/PETSC_1_1_1_1 
[[email protected] PETSc_1_1_1_1]$ echo $PETSC_DIR 
/home/jm72/soft/PETSC_1_1_1_1 
+4

'export' ne définit pas de variable d'environnement, il le marque pour l'exportation dans les processus enfants. 'FOO = BAR' définit la variable' $ FOO' mais ne l'exporte pas vers les processus enfants, et 'export FOO' marque' $ FOO' pour l'export sans en altérer la valeur. 'export FOO = BAR' est un alias pour' FOO = BAR; exporter FOO ». –

+0

Oui, c'est vrai. Il était clair que l'OP venait de la position d'un débutant donc je ne voulais pas rendre l'explication trop compliquée, mais j'ai édité ma réponse pour mieux refléter la réalité. –

+0

Ahhh merci Adam et Jacob! Cela a beaucoup aidé! Mais je ne comprends pas ce que dit Adam à propos des processus de l'enfant. Qu'est-ce qu'un processus? Est-ce une seule session entre l'ouverture et la fermeture de mon terminal gnome? – smilingbuddha