CD к моим папкам показывает мне ошибку

Как предложил SLM на ваш другой вопрос , Я предлагаю сделать это с , а петля, а не на для цикла :

looking_at=
ipcs | while read key id owner other
do
      # Keep track of which section we’re in.
      if [ "$id" = "Shared" ]               # $id is the second field; i.e., $2.
      then
            looking_at=shm
      elif [ "$id" = "Semaphore" ]
      then
            looking_at=sem
      elif [ "$id" = "Message" ]
      then
            break
      fi
      if [ "$owner" = "bob" ]
      then
            if [ "$looking_at" = "shm" ]
            then
                  ipcrm shm "$id"
            elif [ "$looking_at" = "sem" ]
            then
                  ipcrm -s "$id"
            fi
      fi
done

Это считывает вывод команды IPCS в одну строку за раз, Вырывая первые три поля в виде клавиши , ID , и владелец . Как говорит комментарий, Мы используем Selection_at переменную для отслеживания того, какой раздел мы находимся. Затем, на каждой строке, которая содержит BOB в третьем поле, Мы используем Slection_at , чтобы определить, какой параметр IPCRM для использования.

1
03.03.2015, 07:12
1 ответ

Слишком много уровней символических ссылок.

Это, скорее всего, означает, что у вас есть круговая симличинка.

Например, давайте создадим папку , которые ссылаются на себя:

$ ln -s folder folder

Теперь, давайте CD на нем:

$ cd folder
bash: cd: folder: Too many levels of symbolic links

LS дает аналогичный результат:

$ ls folder
ls: cannot access folder: Too many levels of symbolic links

Решением является изучение вашего каталога папок и исправить любую циркулярную ссылку, которую у вас есть. Чтобы помочь попробовать запустить ls -ld на нем:

$ ls -ld folder
lrwxrwxrwx 1 me me 6 Mar  2 21:25 folder -> folder

Вышесказанное ясно показывает простую круговую ссылку.

0
28.01.2020, 01:43

Теги

Похожие вопросы