powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / необычный переход по ссылкам
13 сообщений из 13, страница 1 из 1
необычный переход по ссылкам
    #35560630
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кто нибудь сталкивался вот с такой штукой:
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35560639
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
случайно по привычке на ctrl+Enter нажал)

ну так вот.
Есть папка:
/var/www/test/contsnt/
В ней сидят ещё несколько файлов, обычных папок и одна папка типа link.
И вот теперь если я обращусь к файлу который сидит в директории /contsnt/ вот так:
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35560650
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
/var/www/test/contsnt/temp/xxx/yyy/../../../text.php то этот файл не будет найден,
а если сделать следующую команду
ls -l /var/www/test/contsnt/temp/xxx/yyy/../../../ , то на экран будет выведен только каталог temp, остальные файлы и каталоги будут отсутствовать вообще.

Подскажите если кто знает что это за мистка такая и как с этим бороться. Извините за 3 месаги подряд, просто привык переходить на новую строчку ctrl+enter)
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35560689
avb1003
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы бы хоть сказали на чем и где работаете.

Может быть мы тоже захотим "переходить на новую строчку ctrl+enter".
У меня, например, в bash хоть enter хоть ctrl+enter всегда выдавало и выдает новую
пустую строку с приглашением.
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35560694
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, извините, забыл написать - Ubuntu 5
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35561399
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Моё размышление по этому поводу:
если есть вот такая цепочка директорий /p1/p2/p3/p4/p5, то мы всегда можем вернуться на нужно число уровней вверх, например нам нужна папка p3, тогда мы пишем следующую команду:
Код: plaintext
cd /p1/p2/p3/p4/p5/../../
Но всё обстоит иначе если у нас в этой цепочке есть папки-ссылки, например p3 это ссылка на папку /v1/v2/v3/ и если мы напишем в этом случае следующую команду:
Код: plaintext
cd /p1/p2/p3/p4/p5/../../
, то мы окажемся в директории /v1/v2/v3/, а если:
Код: plaintext
cd /p1/p2/p3/p4/p5/../../../ 
,то в /v1/v2/.
Вопрос такой, есть ли способ заставить линукс по команде:
Код: plaintext
cd /p1/p2/p3(ссылка на /v1/v2/v3/)/p4/p5/../../../ 
переходить не в /v1/v2/, а в /p1/p2/ ?
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35561489
zZzZz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iliag
Вопрос такой, есть ли способ заставить линукс по команде:
Код: plaintext
cd /p1/p2/p3(ссылка на /v1/v2/v3/)/p4/p5/../../../ 
переходить не в /v1/v2/, а в /p1/p2/ ?
bash 3.1.17 (debian etch) так и делает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
test@amalthea:~$ mkdir -p ~/v1/v2/v3/p4/p5
test@amalthea:~$ mkdir -p ~/p1/p2
test@amalthea:~$ cd ~/p1/p2
test@amalthea:~/p1/p2$ ln -s ~/v1/v2/v3 p3
test@amalthea:~/p1/p2$ cd p3
test@amalthea:~/p1/p2/p3$ cd p4/p5
test@amalthea:~/p1/p2/p3/p4/p5$ cd ~
test@amalthea
test@amalthea:~$ cd ~/p1/p2/p3/p4/p5/../../../
test@amalthea:~/p1/p2$ pwd
/home/test/p1/p2
test@amalthea:~/p1/p2$ echo $SHELL
/bin/bash
test@amalthea:~/p1/p2$ /bin/bash --version
GNU bash, version  3 . 1 . 17 ( 1 )-release (x86_64-pc-linux-gnu)
Copyright (C)  2005  Free Software Foundation, Inc.
test@amalthea:~/p1/p2$
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35561730
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я попробовал - действительно работает. Я просто тестировал это на команде
Код: plaintext
ls -l /p1/p2/p3(ссылка на /v1/v2/v3/)/p4/p5/../../../
Вот она реально показывает другую папку.
Для чего мне это нужно: у меня есть директория /p1/p2/ и в ней лежит файл data.txt, мне нужно спустится вниз по всем 3-м папкам(p1,p2,p3) и получить доступ к файлу, фактически запустить команду:

Код: plaintext
cat /p1/p2/p3(ссылка на /v1/v2/v3/)/p4/p5/../../../data.txt
но получается так, что после перехода по ссылкам команда cat оказывается не в той директории
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35561791
zZzZz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если вместо cat использовать:
Код: plaintext
1.
pushd .;cd /p1/p2/p3/p4/p5/../../../;cat ./data.txt;popd
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35566097
iliag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
команда cd поменяет мне текущую директорию - а этого бы делать не хотелось
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35566502
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iliagда, извините, забыл написать - Ubuntu 5

иДЕ ТЫ ЕЁ ОТКОПАЛ, такую красивую ? уже 8-ая вышла в начале весны.
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35566511
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iliag/var/www/test/contsnt/temp/xxx/yyy/../../../text.php то этот файл не будет найден,
а если сделать следующую команду
ls -l /var/www/test/contsnt/temp/xxx/yyy/../../../ , то на экран будет выведен только каталог temp, остальные файлы и каталоги будут отсутствовать вообще.

Подскажите если кто знает что это за мистка такая и как с этим бороться. Извините за 3 месаги подряд, просто привык переходить на новую строчку ctrl+enter)

Тут наверное дело всё в том, что в т.н. "дереве каталогов" ветки "вверх" к дочерним элементам могут сходится за счёт связей, символьных и хардовых. Т.е. в один дочерний каталог можно попасть из нескольких родительских. А ветки "вниз", к корню, имеют только одно направление, один родительский каталог -- тот, ссылка на который записана в записи с именем ".." - она одна, двух быть не может. Видимо, на это ты и попался.

Т.е. еще можно сказать - запись ".." не динамическая, она не "помнит" как в неё пришли, это на самом деле просто обычный файл -- ссылка на родительский каталог, который один.

Так что всё это так и должно работать, если я всё понял правильно.
...
Рейтинг: 0 / 0
необычный переход по ссылкам
    #35567596
zZzZz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iliagкоманда cd поменяет мне текущую директорию - а этого бы делать не хотелось
man pushd
man popd
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / необычный переход по ссылкам
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]