:「:書き込みに失敗しました:ソートを標準出力:壊れたパイプ」bashのエラーソートの「並べ替え:標準出力:失敗を書く壊れたパイプ」私はこのスクリプトを実行すると、私はとのエラーメッセージ受け取る
誰かが可能であればをこのエラーで狂ってしまいます。
入力ファイルはすべてFASTA形式のDNA配列を含むファイルのリストなので、各ファイルには複数のシーケンス(各シーケンスは1行に収められています) $ 2,3(DNA配列)の$ 1(識別子)$ 2,3,4,5,6,7 &の8(多くの値)
次に、このシーケンスを各ファイルのシーケンス数($ common_hits)で選択します(この数値は修正値ではありませんが、例として6を設定します) - 6シーケンス未満のすべてのファイルを削除する必要があります - 6つのシーケンスを持つファイルはOK - 6つ以上のシーケンスを持つファイルを6つのシーケンスに縮小する必要があります(これらのシーケンスはフィールド$ 5のより高い値によって選択されます)
出力ファイルはすべて6つのシーケンスとシーケンス(フィールド$ 9)は識別子の後の行にある必要があります
私はそれが動作することを確認したいので、今は6シーケンス以上のオリジナルファイルを削除していません
par_list=`ls -1 *BR`
common_hits="6"
for i in ${par_list}
do
if [ "`cat ${i} | wc -l`" -lt "${common_hits}" ]
then
rm -f ${i}
elif [ "`cat ${i} | wc -l`" -gt "${common_hits}" ]
then
cat ${i} | sort -nr -k 5 | head -n ${common_hits} | \
awk '{print $1" " $2" " $3" " $4" " $5" " $6" " $7" "$8 ; print $9}' > ${i}.ph
fi
done
スタックオーバーフローサイトへようこそ、コードをコードタグにまとめてください – RavinderSingh13
私はあなたのスクリプトに多くの変更を加えることができました。あなたは2つの事柄を投稿してください.1つはあなたの必要条件です(サンプルInput_fileを使用してください)。と期待されるoutput_file)、2番目の場合は、同じスクリプトだけを使用したい場合は、seあなたの必要条件(Input_fileとコードタグのoutput_fileについて)を教えてください。 – RavinderSingh13
アドバイスありがとう、私は今理解してほしいと思います – Dani