shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [shell-script] Diretório corrente


From: MrBiTs
Subject: RE: [shell-script] Diretório corrente
Date: Tue, 8 Nov 2005 12:53:47 -0300

/*
A variável de ambiante PWD é o que vc está procurando.
root@sepsrv123:~#
root@sepsrv123:~# echo $PWD
/root
root@sepsrv123:~# env | grep PWD
PWD=/root
root@sepsrv123:~#
*/

Não é não. Se ele quer o nome do script e/ou o diretório a partir do qual o
script foi chamado, ele deve usar $0 e dirname, já que tanto a variável PWD
quanto o comando pwd nos trazem sempre o diretório CORRENTE. Vejamos o
exemplo simples abaixo

$ cat pwd.sh
#!/bin/bash

echo "Executando pwd"
pwd
echo "Listando variavel PWD"
echo $PWD
echo "Listando variavel '$0'"
echo $0
echo "Executando dirname em '$0'"
dirname $0
echo "Mudando de diretorio para /tmp"
cd /tmp
echo "Executando pwd"
pwd
echo "Listando variavel PWD"
echo $PWD
echo "Listando variavel '$0'"
echo $0

echo "Executando dirname em '$0'"
dirname $0


E sua saída:

Executando pwd
/home/mrbits
Listando variavel PWD
/home/mrbits
Listando variavel '/usr/local/bin/d.sh'
/usr/local/bin/d.sh
Executando dirname em '/usr/local/bin/d.sh'
/usr/local/bin
Mudando de diretorio para /tmp
Executando pwd
/tmp
Listando variavel PWD
/tmp
Listando variavel '/usr/local/bin/d.sh'
/usr/local/bin/d.sh
Executando dirname em '/usr/local/bin/d.sh'
/usr/local/bin

C.Q.D., pwd e a variável PWD mudam quando mudamos de diretório, enquanto $0
permanece inalterada. 

------
GPG Public Key
http://keyserver.veridis.com:11371/export?id=-6037232142263389818
         \\|||//
         (.) (.)
----ooOO--( )--OOoo-----
      MrBiTs
http://www.mrbits.com.br
  address@hidden
------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]