TAB='echo 'x' | tr 'x' '1''; # tab
while IFS="$TAB" read -r f1 f2 f3 f4 junk; do
printf '$f1=<%s>\n' "$f1"
printf '$f4=<%s>\n' "$f4"
done
Eu tenho um arquivo de texto com guias como separador:
a 1 956 9723
b 2 2 11432
c 3 1307 2964
c 4 2 12586
d 5 1377 11726
e 6 1735 8416
f 7 1320 10443
g 8 1175 9240
h 9 1598 9357
i 10 1405 2066
e eu segui o exemplo no nixCraft para extrair a primeira coluna e a última coluna:
while IFS="\t" read -r f1 f2 f3 f4
do
echo "$f1"
echo "$f4"
done < file.txt
Apenas retorna toda a linha. O que deu errado?
Sistema: CentOS 7, bash 4.2
TAB='echo 'x' | tr 'x' '1''; # tab
while IFS="$TAB" read -r f1 f2 f3 f4 junk; do
printf '$f1=<%s>\n' "$f1"
printf '$f4=<%s>\n' "$f4"
done