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")"
.