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
><><><