bashシェルでawk $1 $2を使用するには?

bashシェルでawk $1 $2を使用するには?
cat << EOF > test.sh

cat $FILEA $FILEB | sort -k1,1 -k2,2n | mergeBed -i - | awk -F\\t '{print $1 "\t" NR "\t\t" $2 "\t" $3 "\t\t.\t\t" NR}' > unionpeaks.gff

EOF

出力ファイルで$ 1 $ 2 $ 3をawkに渡すことができないことがわかりました。私は持っています:

cat /file1.narrowPeak /file2.narrowPeak | sort -k1,1 -k2,2n | mergeBed -i - | awk -F\t '{print  "\t" NR "\t\t"  "\t"  "\t\t.\t\t" NR}' > merge.gff

ベストアンサー1

この文書の$ 1、$ 2、$ 3はそのまま置き換えられますcat。この時点では、パラメータは意味がなく、空の文字列に置き換えられます。考慮する:

bash-4.4$ cat << EOF > test2.sh
> >$1<>$2<>$3<
> EOF
bash-4.4$ cat test2.sh 
><><><

おすすめ記事