Есть две проблемы с вашим существующим скриптом.
Первый — это разделитель :, который вы хотите разделить на пробелы и косую черту; поэтому вам нужно указать регулярное выражение, которое соответствует этому, и использовать его какFS
:FS="[ /]+"
.
Во-вторых, весь ваш код находится в блоке BEGIN
. Вам необходимо инициализировать разделители в блоке BEGIN
(или в другом месте, , например. с использованием определенных параметров AWK ), затем используйте блок сопоставления для обработки строк.
Эта версия работает:
awk 'BEGIN { FS="[ /]+"; OFS="\t" }
(($8>0) && ($8/$9 >= "0.01") || ($10>0) && ($10/$11 >= "0.01")) {
print $1, $2
}' myfile.txt
Строго говоря, было бы лучше использовать 0.01
вместо "0.01"
, так как вы сопоставляете числовые значения:
awk 'BEGIN { FS="[ /]+"; OFS="\t" }
(($8>0) && ($8/$9 >= 0.01) || ($10>0) && ($10/$11 >= 0.01)) {
print $1, $2
}' myfile.txt
Вполне возможно, что ваш socat (или версия библиотеки SSL, с которой он связан ), не поддерживают SSL2/SSL3, и это лучшее, что может сделать принтер. Теоретически, вы можете настроить виртуальную машину с достаточно ржавым дистрибутивом, скажем, CentOS5, и создать там статический сокат, т. е. в него будут встроены все библиотеки. Затем вы можете скопировать этот двоичный файл соката и, надеюсь, использовать это на более современной машине.(configure --help
для socat может быть переключатель для статической сборки.)