Unix/Linux – Преимущество относительных путей над абсолютными путями [закрыто]

grep enfoque.

if echo $1 | grep -qE "^(cat|dog|mouse)$"; then 
    echo "dollar 1 is either a cat or a dog or a mouse"
fi
  • -qpara evitar cualquier salida a la pantalla (más rápida de escribir que>/dev/null).
  • -Epara expresiones regulares extendidas (cat|dog|mouse)aspectos necesita esto.
  • ^(cat|dog|mouse)$coincide con cualquier línea que comience(^)con gato, perro o ratón((cat|dog|mouse))seguido del final de la línea($)
0
15.09.2018, 17:03
3 ответа
  1. Быстрее и проще печатать, меньше вероятность ошибки
  2. Портативный (независимый от местоположения )при создании символических ссылок
1
28.01.2020, 02:31

Возьмем configureскрипт любой программы с открытым исходным кодом.

. если у вас есть репозиторий git new_editorс 2 подмодулями и вы пишете для него скрипт установки, вы не можете писать:

#!/bin/bash
#.........
/home/kashyap/workspaces/new_editor/module1/install.sh
/home/kashyap/workspaces/new_editor/module2/install.sh
#.........

Вы должны написать

#!/bin/bash
#.........
./module1/install.sh
./module2/install.sh
#.........
0
28.01.2020, 02:31

Advantage of relative path names over absolute path names

Большим преимуществом относительных путей является возможность размещения пакетов дистрибутива при использовании стандартной структуры файловой системы. Например, если двоичному файлу в /usr/bin/нужны данные из /usr/share/, то DATADIRиз ../share/означает, что двоичный файл может быть установлен где угодно, и двоичный файл может найти свои данные.

Такая ситуация часто возникает при поэтапной установке с использованием DESTDIR. Вместо установки в /usr/binили /usr/local/binс использованием только BINDIR, пакет можно разместить в /opt/usr/, что эквивалентно $(DESTDIR)$(PREFIX)с DESTDIR=/opt/и PREFIX=/usr. Двоичный файл находится по адресу BINDIR=/opt/usr/bin, а данные — по адресу DATADIR=/opt/usr/bin/../share.

См. такжеDESTDIRв Стандартах кодирования GNU.

1
28.01.2020, 02:31

Теги

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