Bash проблемы с ln -s (Магия какаято)

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

Bash проблемы с ln -s

Сообщение Slimy »

Код: Выделить всё

mf@mf-laptop:/media/16GB FLASH> ln -s /windows/C/Documents\ and\ Settings/max/Рабочий\ стол/ Рабочий\ стол\(win\) ~/Documents/
ln: создание символьной ссылки `/home/mf/Documents/Рабочий стол': Файл существует
ln: создание символьной ссылки `/home/mf/Documents/Рабочий стол(win)': Файл существует

Собственно говоря почему пытается создать две ссылки? причем первая ссылка получается рабочая вторая нет. Если запускать команду с скрипте на флешке то все номально. В другом скрипте тоже такая проблема с дубликатом не понимаю как так выходит.
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Аватара пользователя
cy6erGn0m
Сообщения: 119
ОС: MandrivaLinux/Solaris 10

Re: Bash проблемы с ln -s

Сообщение cy6erGn0m »

потому что пробел стоит неэкранированный

.... Рабочий\ стол/ Рабочий\ стол\(win\) ....

Вот после / но до Р.

надо

. ...... Рабочий\ стол/\ Рабочий\ стол\(win\)

Если конечно пробел вообще нужен

думаю проблема в этом
I want to Believe!

They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
Спасибо сказали:
Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

Re: Bash проблемы с ln -s

Сообщение Slimy »

нет не этом дело пробел там нужен. Отделяет имя ссылки от пути. Проблема появляться если добавить последний параметр который по идее указывает куда ссылку положить, но на практике еще какой-то побочный эффект.
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Аватара пользователя
cy6erGn0m
Сообщения: 119
ОС: MandrivaLinux/Solaris 10

Re: Bash проблемы с ln -s

Сообщение cy6erGn0m »

Странная идея... просто напишите

Код: Выделить всё

ln -s /windows/C/Documents\ and\ Settings/max/Рабочий\ стол   ~/Documents/Рабочий\ стол\(win\)




из man ln

Код: Выделить всё

ln [опции] исходный [куда]


Так что параметра у ln два. Никакое имя ссылки не надо задавать
I want to Believe!

They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
Спасибо сказали:
Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

Re: Bash проблемы с ln -s

Сообщение Slimy »

Код: Выделить всё

ln -s /$win_mnt_dir/$disk_dir_d/Мои\ документы/ Мои\ документы $home_dir

Однако это работает
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Аватара пользователя
cy6erGn0m
Сообщения: 119
ОС: MandrivaLinux/Solaris 10

Re: Bash проблемы с ln -s

Сообщение cy6erGn0m »

У меня это неправильно работает

Код: Выделить всё

cy6ergn0m@cgmachine ~/test $ ln -s `pwd`/test.sh hello_link /home/cy6ergn0m
cy6ergn0m@cgmachine ~/test $ ls -lF /home/cy6ergn0m/test.sh
lrwxrwxrwx 1 cy6ergn0m cy6ergn0m 28 2009-06-12 16:32 /home/cy6ergn0m/test.sh -> /home/cy6ergn0m/test/test.sh*
cy6ergn0m@cgmachine ~/test $ ls -lF /home/cy6ergn0m/hello_link
lrwxrwxrwx 1 cy6ergn0m cy6ergn0m 10 2009-06-12 16:32 /home/cy6ergn0m/hello_link -> hello_link
cy6ergn0m@cgmachine ~/test $ cat /home/cy6ergn0m/hello_link
cat: /home/cy6ergn0m/hello_link: Слишком много уровней символьных ссылок


Ерунду он делает. Надо использовать ln стандартным образом

ln -s [что] [куда]

Никакое это не имя ссылки вторым параметром идёт

Он берёт и создаёт в папке (последний параметр) ссылки на все объекты, которые указаны предыдущими параметрами

опять из man ln

Код: Выделить всё

ln [опции] исходный... каталог


многоточие тут именно это и означает.

Важно понять, что ln не проверят первые параметры, а честно создаёт линки не глядя (если конечно мы не создаём жёсткие ссылки)

например

Код: Выделить всё

cy6ergn0m@cgmachine ~/test $ ln -s erhglerwufhlerwgherwliugh here
cy6ergn0m@cgmachine ~/test $ ls -lF here
lrwxrwxrwx 1 cy6ergn0m cy6ergn0m 25 2009-06-12 16:39 here -> erhglerwufhlerwgherwliugh
cy6ergn0m@cgmachine ~/test $


ln -s /$win_mnt_dir/$disk_dir_d/Мои\ документы/ Мои\ документы $home_dir

Однако это работает


работает по чистой случайности (имена совпадают).
I want to Believe!

They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
Спасибо сказали:
Slimy
Сообщения: 1689
ОС: openSuSE 11.2 GM (GеMор едишн)

Re: Bash проблемы с ln -s

Сообщение Slimy »

Он берёт и создаёт в папке (последний параметр) ссылки на все объекты, которые указаны предыдущими параметрами

Это все объясняет. Действительно совпадение :). В общем проблему решил и разобрался :). Спасибо.
Если уже ничего не помогает - прочти инструкцию.
sysinstall - гадость :)
ASUS A6q00Vm Pentium-M 1.7 GHz, 2Gb RAM, 160Gb HDD,
GeForce Go 7300 64Mb video
Спасибо сказали:
Аватара пользователя
cy6erGn0m
Сообщения: 119
ОС: MandrivaLinux/Solaris 10

Re: Bash проблемы с ln -s

Сообщение cy6erGn0m »

А как же :) И никакой магии ;)
I want to Believe!

They must find it difficult...
Those who have taken authority as the truth,
Rather than trusth as the authority.
/G.Messey/
Спасибо сказали: