Awk
раствор:
awk '{ for (i=1; i<=NF; i++) a[i] = (NR > 1? a[i] : "") $i; }
END{
for (i in a) if (a[i] ~ /(0.*1|1.*0)/) c++;
print c
}' file
Выход:
3
echo 'https://user1:118f32aa48601c10e107f5@portal.myshopb.com:9043/job/Scanner/buildWithParameters?SERVER_IP='${SERVER_IP}'&USER=root&REPORT_NAME=ihs_run' -H "Jenkins-Crumb:8c6f641ab7b9d1e7839c17a2be844490f2c88c5f9ae90c5ae5d52d7eae1" | sed ':a;N;$!ba;s/\n/\\n/g' | xargs curl -k -X POST
Эта ссылка дает хорошее объяснение команды sed, используемой в этом примере. Я просто добавил \\n
, чтобы соответствовать тому, что, по моему мнению, вы хотели получить в результате. Очищенная версия URL-адреса затем передается xargs
, который создаст и выполнит командную строку из стандартного ввода.
В качестве примера ниже будет создан каталог с именем один, вложенный в каталог два.
echo 'one/two' | xargs mkdir -p
аналогично ->mkdir -p one/two
Надеюсь, понятно. Рад, что это помогло вам.