URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 4222
[ Назад ]

Исходное сообщение
"поиск ссылок на файлы"

Отправлено edwin , 29-Апр-05 17:47 
Задача: Найти в текущем каталоге все символьные ссылки на файлы, находящиеся не в текущем каталоге

помогите плз


Содержание

Сообщения в этом обсуждении
"поиск ссылок на файлы"
Отправлено VLazarenko , 29-Апр-05 18:14 
>Задача: Найти в текущем каталоге все символьные ссылки на файлы, находящиеся не
>в текущем каталоге
>
>помогите плз

Ну.. а чем помочь?.. собственно :-)
open,fstat.. etc.
В общем ман читай.


"поиск ссылок на файлы"
Отправлено MaximKuznetsov , 29-Апр-05 19:29 
набросок на tcl..
#!/bin/tclsh
set wd [ pwd ]
foreach name [ glob -- * ] {
  if [ catch { file link $name } link ] {
    continue
  }
  if { [ file normalize [ file dirname $link ] ] != $wd } {
    puts "$name -> $link , target out of current dir."
  }
  # need more tests ?
  if { ! [ file exists $link ] } {
    puts "$name -> $link , not existing target"
  }
}
---
често заявляю - скрипт не тестил, после работы от tcl и так мозги сводит..



"поиск ссылок на файлы"
Отправлено edwin , 29-Апр-05 20:36 
кто-нибудь знает, как это сделать с помощью awk?

"поиск ссылок на файлы"
Отправлено madskull , 29-Апр-05 22:21 
>кто-нибудь знает, как это сделать с помощью awk?


file * | awk -F: '/symbolic link to/{print$1}'


"поиск ссылок на файлы"
Отправлено madskull , 29-Апр-05 22:49 
>>кто-нибудь знает, как это сделать с помощью awk?
>
>
>file * | awk -F: '/symbolic link to/{print$1}'

Не получилось с налету с авком
Вот без авка вариант
ls -l | grep '\->' | while read s; do
  [ "$PWD" = "$(dirname "${s##*-> }")" ] || echo ${s% ->*} | sed 's/^\(\S\+\s\+\)\{7\}//' ;
done


"поиск ссылок на файлы"
Отправлено madskull , 29-Апр-05 22:22 
>набросок на tcl..
......
>често заявляю - скрипт не тестил, после работы от tcl и так
>мозги сводит..

Зачем же тогда так над собой издеваться?


"поиск ссылок на файлы"
Отправлено MaximKuznetsov , 29-Апр-05 22:53 
>>набросок на tcl..
>......
>>често заявляю - скрипт не тестил, после работы от tcl и так
>>мозги сводит..
>
>Зачем же тогда так над собой издеваться?
почему-же издеваться ?
элементарно набросал 15 строчек..
издеваться это если реально потестить - наделать странных ссылок в каталоге и смотреть что будет в разных вариациях..
оставил сие занятие вопрошающему ;-)