首页 > 系统相关 >linux 中实现将fasta文件的碱基数目转换为指定的个数

linux 中实现将fasta文件的碱基数目转换为指定的个数

时间:2022-10-30 18:26:00浏览次数:39  
标签:pc1 碱基 print fa sed linux test fasta root

 

001、每行输出为4个碱基

[root@pc1 test]# ls
test.fa
[root@pc1 test]# cat test.fa
>chr1
aatt
cctt
>chr2
ttgg
aacc
>chr3
TTCCGG
[root@pc1 test]# awk '{if($0 ~ /^>/) {print $0} else {printf("%s", $0)}}' test.fa | sed '2, $ s/>/\n>/' | sed '$ s/$/\n/' | awk -F "" '{if($0 ~ /^>/) {print $0} else {for(i = 1; i <= NF; i++){if(i % 4 == 0) {print $i} else {printf("%s", $i)}}if((i - 1) % 4 != 0){printf("\n")} }}'
>chr1
aatt
cctt
>chr2
ttgg
aacc
>chr3
TTCC
GG

 

 

002、每行输出为5个碱基

[root@pc1 test]# ls
test.fa
[root@pc1 test]# cat test.fa
>chr1
aatt
cctt
>chr2
ttgg
aacc
>chr3
TTCCGG
[root@pc1 test]# awk '{if($0 ~ /^>/) {print $0} else {printf("%s", $0)}}' test.fa | sed '2, $ s/>/\n>/' | sed '$ s/$/\n/' | awk -F "" '{if($0 ~ /^>/) {print $0} else {for(i = 1; i <= NF; i++){if(i % 5 == 0) {print $i} else {printf("%s", $i)}}if((i - 1) % 5 != 0){printf("\n")} }}'
>chr1
aattc
ctt
>chr2
ttgga
acc
>chr3
TTCCG
G

 

标签:pc1,碱基,print,fa,sed,linux,test,fasta,root
From: https://www.cnblogs.com/liujiaxin2018/p/16841844.html

相关文章

  • linux 安装软件学习
    1.适合小白Linux的第三节Linux软件安装适合小白Linux的第三节Linux软件安装_哔哩哔哩_bilibili2.Linux源码安装步骤Linux源码安装步骤-南极山-博客园(cnblogs.com)......
  • Linux Must-Learnt Commands
    Clearsuccessfulloginhistory:echo>/var/log/wtmpViewloginhistory:lastClearcommand'sinputhistory:history-c#temperarllysudoaptinstall-ywipewipe~/.......
  • Linux 测网速
    speedtest-cli是一个用Python编写的轻量级Linux命令行工具,在Python2.4至3.6版本下均可运行。它基于speedtest.net的基础架构来测量网络的上/下行速率。下载:gitclonehttps:......
  • linux 内核的启动过程
           ......
  • 18.Linux系统总结
    Linux基础操作系统操作系统 OperatingSystem 简称 OS ,是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁。操作系统会控制其他程序运行,管......
  • Linux shell编程
    建立文件:第一行#!/bin/bash标识该Shell脚本由哪个Shell解释:#!/bin/bashecho"HelloWorld!"shell中的变量:shell中的变量⑴常用系统变量$#:保存程序......
  • 《Unix&Linux系统编程》第六章学习笔记
    第6章信号和信号处理6.1信号和中断中断是从I/O设备或协处理器发送到CPU的外部请求,将CPU从正常执行转移到中断处理。信号是发送给进程的请求,将进程从正常执行转移到中断......
  • 《Unix/Linux系统编程》第六章学习笔记
    第6章信号和信号处理摘要本章讲述了信号和信号处理;介绍了信号和中断的统一处理,有助于从正确的角度看待信号;将信号视为进程中断,将进程从正常执行转移到信号处理;解释了信......
  • windows 2003 oracle 10.2.0.4 升级迁移到linux 11.2.0.4
    文档课题:windows2003oracle10.2.0.4升级迁移到linux11.2.0.4源端:windows200332位+oracle10.2.0.432位+双实例目标端:centos7.964位+oracle11.2.0.464位应......
  • .net core独立部署到Linux问题点总结
    1.修改配置文件:将所有路径改成Linux下的路径;如果使用了log4net,记得修改日志保存路径;2.发布时选择独立部署、目标运行时选择Linux;3.如是是用mysql,记得在etc/my.cnf的配置......