Profi_GMan
@Profi_GMan

Как в sed выделить часть строки?

Доброго времени суток!
Мне нужно было найти строки в /etc/fstab, которые содержат в себе пути примонтирования, кроме /, сделал так, работает:
sed -n '/^UUID=\w/p' /etc/fstab | sed -n '/\/\w/p'
/etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
#
# / was on /dev/sdb4 during installation
UUID=e07a04ff-80a5-4e9e-908a-216585308dfe / ext4 errors=remount-ro 0 1
# /boot/efi was on /dev/sdb2 during installation
UUID=5E57-9616 /boot/efi vfat umask=0077 0 1
# /home was on /dev/sdb3 during installation
UUID=29aaa21d-d968-4f46-af7a-3d2108c58611 /home ext4 defaults 0 2
# swap was on /dev/sdb6 during installation
UUID=af121028-1faa-4925-a459-3a0bbc233e4f none swap sw 0 0
# UUID=fcd3d208-968b-4c51-97f0-2ed116d67512 /usr ext4 defaults 0 2
# //profi-server/building /home/profi/building-tablet/ cifs username=Profi_GMan,password=Pro1728395,iocharset=utf8
Вывод sed
UUID=5E57-9616 /boot/efi vfat umask=0077 0 1
UUID=29aaa21d-d968-4f46-af7a-3d2108c58611 /home ext4 defaults 0 2

Теперь мне нужно получить непосредственно пути, пробовал так:
sed -n '/^UUID=\w/p' /etc/fstab | sed -n 's/\(\/[^ ]\)/\1/'

Но почему-то не работает.
Я уже всё перепробовал, не получается...
Заранее спасибо!
  • Вопрос задан
  • 1154 просмотра
Решения вопроса 2
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
А зачем это нужно делать именно через SED?
обычный CUT как раз больше подходит для разделения текста по столбцам, например так:
grep UUID /etc/fstab | tr -s " " " "| cut -d " " -f 2


Если через SED, то это неудобнее. Нужно будет мутить с референсами в регулярках, что-то типа /(\w+)(\w+)(\w+)/$2. Вариант без SED в данном случае надежнее и лучше.
Ответ написан
Profi_GMan
@Profi_GMan Автор вопроса
И так, вот ответ:
grep UUID /etc/fstab | tr -s " " " "| cut -d " " -f 2 | sed -n '/\/\w/p'
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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