我有一个awk脚本:
BEGIN { FS="_" }
/^>/ {
id=$1;p=$2; wild=$3;subs=$4; c=$NF; next
}
{
if (p-10<1) s=1
else if (p+10>length($0)) s=length($0)-20
else s=p-10
print id"_"p"_"wild"_"subs">\n"substr($0,s,p-s) c substr($0,p+1,21-p+s)
}
当我跑步时,我得到以下内容:
$ cat test1.fasta | awk -f snp_flank.awk
bash: /usr/bin/awk: /usr/bin/awk: bad interpreter: Too many levels of symbolic links
这是什么意思?
额外信息:
$ ls -l /usr/bin/awk
lrwxrwxrwx 1 root root 21 2011-12-07 16:47 /usr/bin/awk -> /etc/alternatives/awk
$ head -n10 /usr/bin/awk
#!/usr/bin/awk -f
BEGIN { FS="_" }
/^>/ {
id=$1;p=$2; wild=$3;subs=$4; c=$NF; next
}
{
if (p-10<1) s=1
else if (p+10>length($0)) s=length($0)-20
else s=p-10
看起来我不小心用awk脚本替换了awk!抱歉!我该如何解决?只是重新安装awk排序这个?
答案 0 :(得分:1)
您不小心覆盖了/usr/bin/awk
。
在您的系统上重新安装awk。
sudo apt-get install --reinstall gawk
或
sudo yum reinstall gawk
取决于您的系统。