изодромные с предварением файлы записаны некоторыми программами для записи их идентификатора процесса, в то время как они запускают. Это имеет несколько целей:
kill
управляйте, хотите ли Вы закончить его.Простое присутствие изодромного с предварением файла не гарантирует, что тот конкретный идентификатор процесса работает, конечно, таким образом, этот метод не является на 100% надежным, но "достаточно хорошим" в большом количестве экземпляров. Проверка, существует ли конкретный PID в таблице процессов, не является полностью портативной через подобные UNIX операционные системы, если Вы не хотите зависеть от ps
утилита, которая не может быть желательной для вызова во все экземпляры (и я верю некоторой подобной UNIX реализации операционных систем ps
по-другому так или иначе).
Файлы блокировки используются программами для обеспечения двух отдельных экземпляров (хорошего поведения) программы, которая может работать одновременно в одной системе, не получайте доступ к чему-то еще одновременно. Идея, прежде чем программа получает доступ к своему ресурсу, она проверяет на присутствие файла блокировки, и если файл блокировки существует, или ошибка, или ожидайте ее, чтобы уйти. Когда это не существует, программа, желающая "получать" ресурс, создает файл, и затем другие экземпляры, которые могли бы столкнуться позже, будут ожидать этого процесса, который будет сделан с ним. Конечно, это предполагает, что программа, "получающая" блокировку, на самом деле выпускает его и не забывает удалять файл блокировки.
Это работает, потому что файловая система под всеми подобными UNIX операционными системами осуществляет сериализацию, что означает, что только одно изменение в файловой системе на самом деле происходит в любой момент времени. Вид подобных блокировок с базами данных и таким.
Вы на правильном пути, я не думаю, что существует более легкий путь, чем последовательность, которую Вы описываете.
Шаги 3 и 4 немного сбивают с толку. Если Вы хотите перенастроить существующие ссылки Вы сохраняющий то же имя, можно использовать ln -f
перезаписывать существующие файлы. Если Вы хотите, чтобы название Ваших ссылок также изменилось для отражения нового целевого имени, последовательность корректна.
Для Вашей ситуации:
# change target of a symbolic link
# -------------
# ln -s, --symbolic make symbolic links instead of hard links
# ln -f, --force remove existing destination files
#
# Setup: make junk.link to file junk
echo hello > ~/junk
ln -s ~/junk ~/junk.link; cat ~/junk.link
#
# move file and point the link to it.
org="$(readlink ~/junk.link)"
new="$org".moved
mv "$org" "$new"
ln -s -f "$new" "$new".link # '-s' for a soft link
У меня следующая проблема. Я нашел очень хорошую тему значков под названием «Suru++»
.Suru++ 20 [официально ошибка -свободна и совместима с 11 DE -]
Но эта тема значков сделана в формате svg для всех изображений. Теперь я хочу использовать его в Fluxbox и создавать пункты меню, но это возможно только с изображением значка png Я загружаю мастер , внутри которого все значки в формате svg, и да, я могу преобразовать из командной строки svg в png, все в порядке для каждого размера папки, например 16x16, 24x24 px. Но в этих папках есть символические ссылки на файлы svg:
Если есть способ изменить расширение svg на png во всех ссылках symbolix, тема значков будет нормально работать в меню Fluxbox и файловых менеджерах. Я сделал запись об использовании этой темы значков в Xubuntu, но на испанском языке
Да благословит Бог
-s -f
, но в то время как mofifying это, это "проиграло"-s
: неправильно! Из Википедии: 'ln' без опций создает жесткую ссылку, 'ln-f' вызывает жесткую ссылку... так спасибо за вопрос, это действительно подтвердило синтаксис для меня теперь.. Это, конечно, заставило меня перепроверить вещи... Это требуетln -s -f
.. (Я внес корректировку) – Peter.O 23.08.2011, 20:12