美文网首页
2020-07-14 通过简单的内联重定向和变量调用实现gatk

2020-07-14 通过简单的内联重定向和变量调用实现gatk

作者: 王子威PtaYoth | 来源:发表于2020-07-14 13:14 被阅读0次

直接上代码:

#!/bin/bash
for sample in A B C D; do
    cd /data/output/${sample}/
        # 接下来是重点,使用内联重定向符号<<和首尾标记,将多行文本写入json文件
        # 首尾标记可以是任意选择,我这里用EOF(像haha,hehe等也是可以作为标记的),那么两个EOF中间的文本会被重定向至json文件
        # 首尾标记中间的文本除了确实需要缩进的地方,不 需 要 额 外 缩 进
        # 在文本文件中,也可以调用变量,如${sample}
    cat>preprocessing-for-variant-discovery-gatk4.b37.inputs.json<<EOF
{
  "PreProcessingForVariantDiscovery_GATK4.sample_name": "${sample}",
  "PreProcessingForVariantDiscovery_GATK4.ref_name": "b37",
  "PreProcessingForVariantDiscovery_GATK4.flowcell_unmapped_bams_list": "$(pwd)/bamlist.txt", 
  "PreProcessingForVariantDiscovery_GATK4.unmapped_bam_suffix": ".unmap.bam", 

  "PreProcessingForVariantDiscovery_GATK4.ref_dict": "/root/gatk-workflows/input/human_g1k_v37_decoy.dict", 
  "PreProcessingForVariantDiscovery_GATK4.ref_fasta": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta", 
  "PreProcessingForVariantDiscovery_GATK4.ref_fasta_index": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta.fai", 
  "PreProcessingForVariantDiscovery_GATK4.SamToFastqAndBwaMem.ref_sa": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta.sa",
  "PreProcessingForVariantDiscovery_GATK4.SamToFastqAndBwaMem.ref_amb": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta.amb",
  "PreProcessingForVariantDiscovery_GATK4.SamToFastqAndBwaMem.ref_bwt": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta.bwt",
  "PreProcessingForVariantDiscovery_GATK4.SamToFastqAndBwaMem.ref_ann": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta.ann",
  "PreProcessingForVariantDiscovery_GATK4.SamToFastqAndBwaMem.ref_pac": "/root/gatk-workflows/input/human_g1k_v37_decoy.fasta.pac",

  "PreProcessingForVariantDiscovery_GATK4.dbSNP_vcf": "/root/gatk-workflows/input/dbsnp_138.b37.vcf",
  "PreProcessingForVariantDiscovery_GATK4.dbSNP_vcf_index": "/root/gatk-workflows/input/dbsnp_138.b37.vcf.idx",
  "PreProcessingForVariantDiscovery_GATK4.known_indels_sites_VCFs": [
    "/root/gatk-workflows/input/Mills_and_1000G_gold_standard.indels.b37.vcf"
  ],
  "PreProcessingForVariantDiscovery_GATK4.known_indels_sites_indices": [
    "/root/gatk-workflows/input/Mills_and_1000G_gold_standard.indels.b37.vcf.idx"
  ]
}
EOF
done

使用内联重定向符号<<和首尾标记,可以将多行文本写入json文件
首尾标记可以是任意选择,我这里用EOF(像haha,hehe等也是可以作为标记的),那么两个EOF中间的文本会被重定向至json文件
首尾标记中间的文本除了确实需要缩进的地方,不 需 要 额 外 缩 进
在文本文件中,也可以调用变量,如${sample}

相关文章

  • 2020-07-14 通过简单的内联重定向和变量调用实现gatk

    直接上代码: 使用内联重定向符号<<和首尾标记,可以将多行文本写入json文件首尾标记可以是任意选择,我这里用EO...

  • C/C++知识点分享(29)

    1.宏与内联函数的区别 解析:内联函数和宏都是在程序出现的地方展开,内联函数不是通过函数调用实现的,是在调用该函数...

  • c++函数内联函数 inline

    内联函数用于调用次数多,且实现简单。可以选择在类的声明中直接定义函数使得其成为内联函数,或者在类的实现中使用inl...

  • HTTP中的重定向和请求转发的区别

    一、调用方式 我们知道,在servlet中调用转发、重定向的语句如下: 在jsp页面中你也会看到通过下面的方式实现...

  • Kotlin-简约之美-进阶篇(十四):inline内联函数

    inline 的工作原理就是将内联函数的函数体复制到调用处实现内联 @[toc] 方法调用流程 调用一个方法是一个...

  • c++之内联函数

    函数声明或者实现前加inline 内联函数相当于直接把函数体内的代码替换调用处代码。为什么要使用内联函数?函数调用...

  • KVC的简单用法

    KVC是给对象的成员变量赋值和拿到成员变量的值得另一种方式(也可通过调用set方法和get方法实现) 创建一个学生...

  • 宏定义define和内联函数inline区别

    内联函数是代码被插入到调用者代码处的函数。如同#define宏,内联函数通过避免被调用的开销来提高执行效率,尤其是...

  • 通过变量调用函数

    函数如下 第一步:将函数赋值给变量 第二步:调用变量

  • Nginx的Rewrite基本用法

    Nginx提供的全局变量或自己设置的变量,结合正则表达式和标志位实现url重写以及重定向。rewrite只能放在s...

网友评论

      本文标题:2020-07-14 通过简单的内联重定向和变量调用实现gatk

      本文链接:https://www.haomeiwen.com/subject/pmixhktx.html