Разделите базовое имя файла, сохраните часть каталога

[116047] Текущая версия программы установки Anaconda в репозитории Centos 6.5 - 13.21.215-1.

Hacked SD card, exposing USB interface

Проверяяя исходные тексты, мы видим, что программа установки имеет проверки на вменяемость конфигурации хранилища (начиная со 1008 хранилища [116545]/__init__.py[116546]).

Часть этих проверок на вменяемость утверждает, что следующие каталоги должны быть в корневой файловой системе и поэтому не могут быть в отдельных точках монтирования

Если вы удалите отдельное монтирование, созданное для /root (возможно, выделите место в / point point, если это возможно), то программа установки, скорее всего, разрешит продолжить.[116054].

1
07.12.2014, 01:48
3 ответа

Если вы не настаиваете на использовании sed, то вы можете подумать об использовании dirname:

S="dir/subdir/othersubdir/file.txt"
P=$(dirname $S)
echo $P
dir/subdir/othersubdir

S="dir/file.txt"
P=$(dirname $S)
echo $P
dir
3
27.01.2020, 23:17

Если вы используете zsh жизнь намного проще, просто используйте :h модификатор:

$ var='dir/subdir/othersubdir/file.txt'
$ echo "$var:h"
dir/subdir/othersubdir
0
27.01.2020, 23:17

Вот sed команда:

$ P="dir/subdir/othersubdir/file.txt"
$ sed -r 's/^(.*)\/.*\.txt$/\1/' <<< $P
dir/subdir/othersubdir

В вышеприведенной sed команде мы захватываем все, что угодно. * от начала^ переменной P, которая заканчивается$ командой/*. txt, которая известна как захваченная группа с\1 в качестве ее beck-ссылки, так как использовала вокруг нее пару круглых скобок(.*), затем, заменяя часть команды sed, мы печатаем только захваченную группу, используя ее обратную ссылку.

2
27.01.2020, 23:17

Теги

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