Добавление массива особо не помогает :вам все равно придется перебирать элементы массива (см. Как проверить, находится ли элемент в массиве bash?):
while read -r lo; do
for keyword in "${keywords[@]}"; do
if [[ $lo == *$keyword* ]]; then
echo $lo >> ~/Desktop/test_result.txt && KEY_COUNT="`expr $KEY_COUNT + 1`"
fi
done
done < "$i"
Возможно, лучше использовать оператор case
:
while read -r lo; do
case $lo in
*(ID|Instance|NOT|AI|Sitting)*)
echo "$lo" >> ~/Desktop/test_result.txt && KEY_COUNT="`expr $KEY_COUNT + 1`"
;;
esac
done < "$i"
(Я предполагаю, что вы выполняете дальнейшую обработку этих строк внутри цикла. Если нет, grep или awk могут сделать это более эффективно.)
Вы должны найти определенный бинарный модуль, доступный yum, и скопировать его на автономный сервер, поэтому вы в основном загружаете бинарный модуль на свой компьютер, а затем копируете каталог в указанное место из вашей VPN.
одним из решений может быть использованиеyumdownloader --resolve <package name>
Порядок их установки определяется yum:
yum install./*rpm
Теперь вам нужно запустить указанную выше команду в папке со скачанными пакетами, которые включают все зависимости, и она сделает все необходимое.