#每两行合并为一行,并且以制表符分隔
#!/bin/bash
sed -n ‘{N;s/\n/\t/p}’ column.txt > type1.text
#切割文件
#!/bin/bash
for i in {1..50}
do
m=$(($i*3-2))
n=$(($i*3))
cut -b$m-$n text.text > $i.txt
i=$(($i+1))
done
#有两个文件,其中文件b是文件a部分行的集合,先将fileb分解为小文件,每个文件一行,再从文件a中取出包含文件b的部分。将文件b拆开为每行一个文件,再进行下面的操作
#!/bin/bash
for b in {1..n}
do
cat “file_a” | grep `cat file$b` >>new_file
b=$(($b+1))
done
#将text文件分解为小文件,每一行为一个文件
#!/bin/bash
x=1
while read Line
do
echo “$Line” > file_a$x
x=$(($x+1))
done < text.txt
#!/usr/bin/bash
if [ -f $1 ]
then
if [ -z $2 ]
then
echo “Please specify the output file.”
else
echo “Please wait……”
cat $1 > .temp.fa
sed ‘s/ //g’ .temp.fa > .temp1.fa
sed ‘s/>BGI_novel_T[0-9]{6}gene=[0-9]{9}/###/g’ .temp1.fa > .temp2.fa
echo `cat .temp2.fa` > .temp3.fa
sed ‘s/###/\n###/g’ .temp3.fa > .temp4.fa
sed ‘s/>/\n>/g’ .temp4.fa > .temp5.fa
grep ^”>” .temp5.fa > .temp6.fa
sed ‘s/ /\n/g’ .temp6.fa > .temp7.fa
sed ‘s/gene/ gene/g’ .temp7.fa > .temp8.fa
sed ‘/^$/d’ .temp8.fa > $2
rm .temp*.fa
fi
else
echo “Please specify the input file.”
fi
exit 0
#以一个文件的内容替换另一个文件的内容,两个文件数量相等。替换与被替换的文件结尾的数字相同,分别取出两个文件的内容作为变量,将v2替换为v1。
#!/bin/bash
for x in {1…n}
do
v1=`cat file_a$x`
v2=`cat file_b$x`
sed -i “s|$v2|$v1|g” text.txt
x=$(($x+1))
done
#!/bin/bash
GROUP=groups.txt
SPECIES=alyr.fasta
#
sed -i ‘s/ /\n/g’ $GROUP
cat $GROUP | awk ‘{print “>”$1}’ | sed s/\>led/led/g > groups1.txt
cat groups1.txt | grep ‘^>’ > groups2.txt
#
a=1
while read Line
do
echo “$Line” > file$a
a=$(($a+1))
done < groups2.txt
#
echo `cat $SPECIES` > alyr2.fasta
sed ‘s/>/\n>/g’ alyr2.fasta > alyr3.fasta
#
#LENGTH=`cat groups2.txt | wc -l`
for a in {1..403484}
do
head= cat “alyr3.fasta” | grep `cat “file$a”`
a=$(($a+1))
done > h.fasta
#
a=1
while read Line
do
echo “$Line” > gile$a
a=$(($a+1))
done < h.fasta
#
cp groups1.txt Results.txt
#LENGTHH=`cat h.fasta | wc -l`
for a in {1..35660}
do
h1=`cut -c 1-20 gile$a`
h2=`cat gile$a`
sed -i s/$h1/$h2/g Results.txt
a=$(($a+1))
done
#
sed -i ‘s/\.1/\.1\n/g’ Results.txt
sed -i ‘s/\.2/\.2\n/g’ Results.txt
sed -i ‘/^$/d’ Results.txt
rm file11* file12* file13* file14*
rm file1*
rm file21* file22* file23* file24*
rm file2*
rm file31* file32* file33* file34*
rm file3*
rm file*
rm gile*
echo “Done!”
#!/bin/bash
echo “请稍等,正在处理……”
mkdir folder
file=`ls | grep -v add.sh | grep -v folder`
mv $file folder
cd folder
for var in `ls`; do for i in {1..10}; do cut -d ‘ ‘ -f$i $var > $var.$i; done; done
mkdir dot hebing
mv *.* dot
cd dot
for i in {1..10}; do paste -d ‘ ‘ *.$i > ../hebing/$i; i=$((i+1)); done
cd ../hebing
mkdir jia
cut -d ‘ ‘ -f1 ../hebing/1 > jia/s1
cat 2 | awk -F ” ” ‘{for (i=1; i<=NF; i++) sum += $i; print sum; sum=0}’ > jia/s2
for j in {3..10}; do cat $j | awk -F ” ” ‘{for (i=1; i<=NF; i++) sum += $i; print sum; sum=0}’ > jia/c$j; done
cd jia
paste -d ‘ ‘ c3 c4 c5 > 345; paste -d ‘ ‘ c6 c7 c8 c9 c10 > 678910
cat 345 | awk -F ” ” ‘{for (i=1; i<=NF; i++) sum += $i; print sum; sum=0}’ > s3
cat 678910 | awk -F ” ” ‘{for (i=1; i<=NF; i++) sum += $i; print sum; sum=0}’ > s4
for i in {2,3,4}; do cat s$i | awk ‘{printf (“%.7f\n”,$1)}’ > s$i$i; i=$((i+1)); done
# cat s2 | awk ‘{printf (“%.7f\n”,$1)}’ > s22
# cat s3 | awk ‘{printf (“%.7f\n”,$1)}’ > s33
# cat s4 | awk ‘{printf (“%.7f\n”,$1)}’ > s44
paste -d “\t” s1 s22 s33 s44 > result.text
mv result.text ../../../
cd ../..
for var in `ls`; do if [ -f $var ]; then mv $var ..; fi; done
# cd ..; rm -r folder
echo “完毕!”
#!/bin/bash
if [ -z $1 ]
then
echo “请在脚本后空一格,然后输入一个文件的名字,这个文件的第一列将作为结果的第一列。 ”
else
echo “请稍等,正在处理……”
mkdir data.data
a=`ls | grep -v shell.sh | grep -v data.data`
mv $a data.data
cat data.data/* > all.text
mv data.data/* .
rm -r data.data
sed -i “s/ /\t/g” all.text
cat $1 | cut -d ” ” -f1 > s1
cat all.text | awk -F “\t” ‘{sum+=$2} END {print sum}’ > s2
for i in {3..10}
do
cat all.text | awk -F “\t” ‘{sum+=$i} END {print sum}’ > c$i
done
paste -d “\t” c3 c4 c5 c6 c7 c8 c9 c10 > result1.text
cat result1.text | awk -F “\t” ‘{s3=$1+$2+$3} {print s3}’ > s3
cat result1.text | awk -F “\t” ‘{s4=$4+$5+$6+$7+$8} {print s4}’ > s4
paste -d “\t” s1 s2 s3 s4 > result.text
rm all.text result1.text c3 c4 c5 c6 c7 c8 c9 c10 s1 s2 s3 s4
echo “完毕! ”
fi