2010-11-12 2 views

Répondre

2

Ajout à la réponse de » Alberto:

Voici une petite démo:

$ cat a.sh  # the script a.sh just exports a variable foo 
export foo="$1" # with it's value set to first command line argument. 
$ echo $foo  # currently variable foo is not set. 

$ . ./a.sh $(pwd) # source the script passing it pwd as argument. 
$ echo $foo  # variable foo is now set. 
/home/codaddict 
$ pwd    # the present working directory. 
/home/codaddict 
+0

. ./a.sh $ (pwd) '# source le script lui passant la sortie de' pwd' comme argument (pas le texte 'pwd') – Johnsyweb

+0

$ chat srihari.sh export srikanth = "$ 1" $ ksh -x srihari. sh $ (pwd) + export srikanth =/home/exemples/cahier1/srihari2010 $ echo $ srikanth - rien affiché-- $. ./srihari.sh $ (pwd) $ echo $ srikanth/home/exemples/classeur1/srihari2010 $ pwd/home/examples/classeur1/srihari2010 Quelle est la différence? – srihari

1
. 

signifie la source ce qui suit

./ab_project_setup.ksh 

le nom du fichier que vous sourcez

$(pwd) 

se développe dans le répertoire de travail actuel et est transmis en tant que argument au script.

+0

merci Alberto pour votre réponse de votre explication, je compris que $ (PWD) est envoyé en tant argument.How sera nous savons si le script attend argument et aussi pourquoi ici. ./script.ksh $ (pwd) déclaration deux points sont utilisés? pls answer. – srihari

+0

@srihari: pour savoir si le script utilise un paramètre il suffit de l'ouvrir et de regarder à l'intérieur, vous devriez voir un '$ 1' utilisé; le premier point est à la source, le second à spécifier que vous voulez utiliser un fichier nommé 'script.ksh' dans le répertoire courant. –

+0

remercie beaucoup Alberto. – srihari

Questions connexes