Escape-последовательность для выполнения CRLF, но только если не в начале строки?

Другой подход состоит в том, чтобы просмотреть файл дважды, сначала для создания ссылки, а затем для фильтрации по мере необходимости.

$ awk 'NR==FNR{a[$3]++; next} a[$3]==3' ip.txt ip.txt 
1 2 APPLE
8 2 APPLE
3 4 APPLE

$ awk 'NR==FNR{a[$3]++; next} a[$3]==2' ip.txt ip.txt 
3 4 PEAR
9 3 LEMON
9 3 LEMON
8 3 PEAR

$ awk 'NR==FNR{a[$3]++; next} a[$3]<2' ip.txt ip.txt 
A B C
8 3 ORANGE
-1
24.10.2019, 08:34
1 ответ

Вы можете проверить положение курсора, следующее даст вам положение курсора по горизонтали:

IFS=';' read -sdR -p $'\E[6n' ROW COL;echo "${COL#*[}"

, а затем, например, в сценарии вы можете сделать

#!/bin/bash

x_pos=$(IFS=';' read -sdR -p $'\E[6n' ROW COL;echo "${COL#*[}")   

if [ $x_pos == 1 ] 
 then
   echo "We are at the beginning since cursor is at $x_pos"
else 
    echo "Cursor is at $x_pos so send $LF with \n" 
fi

1
28.01.2020, 05:09

Теги

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