sort -t $ ‘\ t’ équivalent compatible avec POSIX sh?

J’essaie d’utiliser une boucle for pour plusieurs fichiers de mon répertoire avec une commande pipe, mais cela ne semble pas fonctionner. Lorsque j’exécute la même commande sur un seul fichier, cela semble fonctionner. Où est-ce que je me trompe?

for x in *summary-FDR0.05 ; do sort -t $'\t' -k8,8rn $x | head -n 50000 | sortBed -i > sorted_top_50k_$x.bed; done 

Tous mes fichiers se terminent par un summary-FDR0.05 . Quand je cours

 sort -t $'\t' -k8,8rn sample13-summary-FDR0.05 | head -n 50000 | sortBed -i > sorted_top_50k_S_13_O1_122*K27ac.bed 

Cela semble bien fonctionner. Puis-je savoir où je le porte?

Erreur:

 sort: multi-character tab `$\\t' 

Merci

Pour la compatibilité POSIX, remplacez $'\t' par "$(printf "\t")" .