Ваша проблема возникает из-за IFS=";"
Я думаю: эта модификация повлияет на цикл for.
Попробуйте:
IFS_OLD=$IFS
IFS=";"
while read title firm desc version manager
do
query='"'$(echo $firm $title $version | tr -d '"')'"'
var3=$(python3 $HOME/cve-search/bin/search_fulltext.py -q "$query" | tr '\n' ' ')
echo "Source: "$var3
i=0
echo "Words in variable: "$(echo "$var3"|wc -w)
IFS=" "
for cve in $var3
do
echo $cve
i=$[ $i+1 ]
done
IFS=";"
echo "Words processed: "$i
done
IFS=$IFS_OLD
GNU ненавидит справочные страницы, поэтому они обычно пишут документацию в другом формате и генерируют справочную страницу на ее основе, не особо заботясь о том, можно ли использовать результат.
C@t{++}
— это разметка texinfo, которая не была переведена. Он не предназначался для использования в -документации, видимой пользователю. Следует просто сказать C++
(, возможно, используя какой-то специальный шрифт для ++
, чтобы он выглядел красиво ).
Последовательность @t{...}
является разметкой texinfo для набора последовательности с использованием шрифта фиксированной ширины -(см. раздел Шрифты руководства texinfo для более подробной информации и некоторых примеров.)
Похоже, они пытались написать "C++" и заставить "++" использовать шрифт фиксированной ширины (, например "++
". )Возможно, кто-то обнаружил, что некоторые шрифты дают лучшие результаты при рендеринге документации в PostScript или PDF или в каком-либо формате, в котором по умолчанию используются шрифты переменной -ширины.
Причина, по которой это не работает и вы видите необработанную последовательность, заключается в том, что texinfo используется системой документации info
, а man
использует nroff, который является другим языком с другими командами (. ] например, команда переключения на шрифт постоянной ширины в nroff — \f(CW
), поэтому, конечно, последовательность @t{...}
не распознается неизменной.
Эта проблема, по-видимому, возникла в коммите от апреля 2013 года , где справочные страницы были преобразованы в texinfo и была введена эта специфическая разметка. Кажется, сценарий, используемый сейчас для создания справочных страниц (texi2man.pl
), не распознает или не преобразует должным образом эту последовательность.