Ответ Ignacio Vazquez-Abrams является самым безопасным, но если Вы действительно хотите сделать это (как я делаю в некоторых случаях), простое обходное решение может легко добраться по крайней мере отчасти там путем контакта с # comments
которые поднимают всю строку.
Вещи могут стать немного непростыми, если Вы хотите обработать комментарии, которые следуют за реальными линиями передачи данных списка, если Вы не уверены, что Ваши линии передачи данных содержат не встроенный #
символы.
Можно использовать замену процесса и простой сценарий помощника.
Вот некоторые примеры. grc
прежде diff
генерирует окрашенный вывод.
Я использовал функции удара, но можно, конечно, сохранить их в файл сценария.
# nocom handles comment-only lines (ie. no dat)
# it ignores any # chars embedded in your data lines.
#
nocom() { sed -e '/^[[:space:]]*#/d' "$1"; }
# NOCOM handles handles comments which occurr after your data
# as well as comment-only lines.
# Do not use NOCM unless you are CERTAIN that your data
# lines contain no # chars.
#
NOCOM() { sed -n '/^[[:space:]]*#/d; s/^\([^#][^#]*[^[:space:]]\)[[:space:]]*#.*/\1/; p' "$1"; }
printf '# a bit of hokus-pokus
# you see the coments here,
# but the calling program will not.
$HOME/bin/abra
$HOME/bin/kadabra # comment after data
$HOME/bin/sim# another comment after data
' >file
echo == nocom ==
cat <(nocom "file")
echo == NOCOM ==
cat <(NOCOM "file")
echo == diff ==
grc diff "file" <(NOCOM "file")
Вот вывод:
== nocom ==
$HOME/bin/abra
$HOME/bin/kadabra # comment after data
$HOME/bin/sim# another comment after data
== NOCOM ==
$HOME/bin/abra
$HOME/bin/kadabra
$HOME/bin/sim
== diff ==
1,3d0
< # a bit of hokus-pokus
< # you see the coments here,
< # but the calling program won't.
5,6c2,3
< $HOME/bin/kadabra # comment after data
< $HOME/bin/sim# another comment after data
---
> $HOME/bin/kadabra
> $HOME/bin/sim
Это обычно вызывается глупой BIOS, которая проверяет таблицу разделов на флаг начальной загрузки MS-DOS, и если никакой раздел не имеет его, печатает это сообщение и отказывается загружаться. Выполненный sudo fdisk /dev/sda
и распечатайте таблицу разделов с p
. Если никакой раздел не имеет флаг начальной загрузки, то установленный это с a
команда, и наконец сохраняет и выходит с w
.