LINUX.ORG.RU

Как отрезать из абсолютного пути относительный пусть

 , ,


0

1

Хочу получить относительный путь из абсолютного пути к файлу locate | grep имя_файла.расширение получаемый из locate под относительным путем понимаю путь к от флешки до файла.



Последнее исправление: xxoaea (всего исправлений: 2)

Ответ на: комментарий от xxoaea

Вариант хороший только в выводе не ёхватает делиминарора слеша как его туда добавить?

Дописать слэш туда, где его не хватает.

$ echo "/"$(realpath --relative-to=/usr /usr/bin/traceroute)
/bin/traceroute
annulen ★★★★★
()
Ответ на: комментарий от xxoaea

Если суть операции в «адаптации» пути к новой точке монтирования, то слэш придется приписывать. Либо вынести реализацию в скрипт (или функцию), и дальше использовать его.

annulen ★★★★★
()
Ответ на: комментарий от master_0K

А автоматизироать этот процесс нельзя я имею ввиду определение точки монтирования флешки и отфильтровать напр с помощью sed || grep удалив все ненужное из абс пути?

xxoaea
() автор топика
Ответ на: комментарий от xxoaea

Вариантов сделать это «вагон и маленькая тележка».

Ключевое определиться что есть «флешка». Дальше дело техники.

Проблема в том, что является ли устройство /dev/sdX «флешкой» будет гипотезой основаной на следующих фактах

  • блочное устройство типа диск
  • подключено к USB

если этого достаточно, то задача решена.

В реальности могут быть «сюрпризы» от

  • нескольких смонтированных флешек
  • нескольких смонтированных разделов одной флешки

до

  • «кто-то, зачем-то представляется блочным устройством USB»
master_0K
()