Encontrando strings em arquivos com caminho relativo

1

Eu não entendo porque esses dois comandos não fornecem o mesmo resultado (a diferença é apenas relativa vs. absoluta), alguém pode explicar isso?

annika /srv/www/pages/com.example.www/www/povruc # find /srv/www/pages/com.example.www/www | xargs grep "datepicker()" 2>/dev/null 
/srv/www/pages/com.example.www/www/povruc/Application/Libraries/3rdParty/zebra/includes/Date.php:    function disable_zebra_datepicker() {
/srv/www/pages/com.example.www/www/js/functions.js:       $(".datepicker").datepicker();

versus

annika /srv/www/pages/com.example.www/www/povruc # find ../ | xargs grep "datepicker()" 2>/dev/null 
../povruc/Application/Libraries/3rdParty/zebra/includes/Date.php:    function disable_zebra_datepicker() {

No segundo caso, a segunda correspondência não é encontrada

UPDATE - provou que não há links simbólicos no caminho:

annika /srv/www/pages/com.example.www/www/povruc # namei -ml $(readlink -f $PWD)
f: /srv/www/pages/com.example.www/www/povruc
drwxr-xr-x root       root /
drwxr-xr-x root       root srv
drwxr-xr-x root       root www
drwxr-xr-x root       root pages
drwxrwx--- Wexampl001 root com.example.www
drwxrwx--- Wexampl001 root www
drwxrwx--- Wexampl001 root povruc
    
por Kuba Petržílka 19.11.2014 / 11:01

1 resposta

1

Em essência, este é o problema; diretório a partir do qual você está fazendo o achado é symlink; movimento tão relativo .. não está se movendo para onde você esperaria; em vez de .. de $(readlink -f $PWD)

moo:~$ mkdir foo bar
moo:~$ cd bar/
moo:~/bar$ ln -s ../foo/
moo:~/bar$ touch w00t
moo:~/bar$ ls -1
foo  
w00t
moo:~/bar$ cd foo
moo:~/bar/foo$ ls -1 ../
bar
foo

utilitários legais para determinar o caminho real de algum arquivo

$ readlink -f some_name

ou verifique com namei como algum caminho está vinculado, por exemplo,

$ namei -ml /etc/passwd f: /etc/passwd drwxr-xr-x root root / drwxr-xr-x root root etc -rw-r--r-- root root passwd

O exemplo acima não contém links simbólicos ao longo do caminho, mas havia algum que mostraria em detalhes qual é o verdadeiro caminho de alguns arquivos sem a insanidade do link simbólico.

    
por 19.11.2014 / 11:22