Цикл по строкам в файле и увеличение переменной до следующей

Когда вы говорите, что он принимает ввод в интерактивном режиме, это означает, что он читает из stdin. Мы можем воспроизвести это, повторив ввод вstdin:

процесса.
echo "D" | java -jar oswbba.jar -i /opt/oracle/tfa/repository/suptools/<HOSTNAME>/oswbb/oracle/archive

Обратите внимание, что echoавтоматически заканчивается символом новой строки.

Если вам нужны дополнительные данные, вы можете:

echo -e "D\n<next_input>\n<next_input>" |...

Флаг -eпозволяет интерпретировать управляющие последовательности, такие как \n.

0
09.04.2020, 11:14
2 ответа

с помощьюawk:

awk 'prev{ print "sed -n \047/" prev "/,/" $0 "/p\047 file"; }
         { prev=$0 }' infile
0
28.04.2021, 23:18

Работал нормально, но не так хорошо, как предыдущий ответ

la=`awk 'END{print NR}' filename`
co=$(($la - 1))

for i in `sed -n "1,"$co"p" filename`; do awk -v i="$i" '$1 ~ i {getline x;print "sed -n" " "  "/"$0"/,/"x"/p"}' filename; done| sed "s/\//'&/"| sed "s/\/p/\/p'/g"

выход

sed -n '/455860902/,/868790949/p'
sed -n '/868790949/,/279116188/p'
sed -n '/279116188/,/689905426/p'
0
28.04.2021, 23:18

Теги

Похожие вопросы