文档首页 > > CLI参考> 示例:使用命令行执行简单脚本

示例:使用命令行执行简单脚本

分享
更新时间: 2019/07/26 11:11

基因容器命令行工具提供了上传原始数据和参考组数据至OBS桶内的功能。当然您还可以使用 OBS 客户端上传数据。

前提条件

请确保已完成命令行工具安装,且已创建集群资源。如未完成,请参见安装命令行工具完成操作。

上传本地数据文件

为了执行基因比对任务,需要将本地的原始数据文件及参考组文件上传至对象存储桶中。

基因容器服务提供原始测试数据供您使用,下载路径为:

此外,基因容器服务已在公共数据桶中上传hg19.fa*参考组,您可以直接使用,无需下载或是上传至OBS桶中。公共参考组数据由基因容器自动挂载到对象存储的/ref目录下。

本示例中使用的是GCS提供的原始测试数据,将已下载到本地路径为“/LOCAL_FILE”文件夹内的原始数据上传至OBS桶中的sample目录下。

如下示例以将原始数据文件传至 sample 目录,参考组文件传至 reference目录为例。执行以下命令上传基本文件,其中“LOCAL_FILE”为本地文件路径。

gcs obs upload /LOCAL_FILE/R1.fq.gz --obs-path sample
gcs obs upload /LOCAL_FILE/R2.fq.gz --obs-path sample
gcs obs upload /LOCAL_FILE/hg19.fa     --obs-path reference
gcs obs upload /LOCAL_FILE/hg19.fa.amb --obs-path reference
gcs obs upload /LOCAL_FILE/hg19.fa.ann --obs-path reference
gcs obs upload /LOCAL_FILE/hg19.fa.bwt --obs-path reference
gcs obs upload /LOCAL_FILE/hg19.fa.fai --obs-path reference
gcs obs upload /LOCAL_FILE/hg19.fa.pac --obs-path reference
gcs obs upload /LOCAL_FILE/hg19.fa.sa  --obs-path reference

提交单个任务

使用命令行工具执行gcs sub job提交单个任务。如下图所示,执行单任务即指由基因容器服务在集群中选择某一个节点上的容器来运行输入参数FILENAME中的内容。

以执行脚本名为bwa_help.sh为例,其中脚本中内容为查看bwa软件使用方法,并将输出重定向至/obs/log.err文件中。bwa软件为基因测序常用工具,作为公共工具集成在基因容器服务供您使用。

bwa_help.sh文件中内容为:

#cat bwa_help.sh
bwa 2> /obs/log.err

或是如下脚本:

#cat bwa_help.sh
sleep 5 && echo 123 >/obs/log.err

执行如下命令,为脚本bwa_help.sh申请1G内存、1核CPU,并在基因容器中执行该脚本。

gcs sub job --memory 1g --cpu 1 --shell sh --tool bwa:0.7.12 bwa_help.sh

提交一组任务

命令行提交一组任务的示例如下:

以多个样本并行执行 bwa 软件使用方法为例。首先完成 上传本地数据文件 中的文件上传后,假设需要对上传的原始文件、参考基因组进行基因比对,有如下脚本 bwa_mem.sh:

#cat bwa_mem.sh
fastq=$1
ref=$2

bwa mem $ref $fastq

此时,如果对这个脚本执行不同参数,可以额外写一个脚本 bwa_mem_work.sh。注意这里使用的 /ref 文件夹是由基因窗口提供的hg19.fa公共参考组数据,无需上传。

#cat bwa_mem_work.sh
sh bwa_mem.sh /obs/sample/R1.fq.gz /ref/reference_files/hg19.fa >/obs/sample1.sam
sh bwa_mem.sh /obs/sample/R2.fa.gz /ref/reference_files/hg19.fa >/obs/sample2.sam

若如上传本地数据文件所示,上传的自己本地文件,则这里 bwa_mem_work.sh 应写为:

#cat bwa_mem_work.sh
sh bwa_mem.sh /obs/sample/R1.fq.gz /obs/reference/hg19.fa >/obs/sample1.sam
sh bwa_mem.sh /obs/sample/R2.fa.gz /obs/reference/hg19.fa >/obs/sample2.sam

对这个额外脚本,需要使用 gcs sub repjob 投递。同样这里可以使用 bwa:0.7.12 这个工具:

gcs sub repjob -cpu 1 --memory 1g --shell sh --tool bwa:0.7.12 bwa_mem_work.sh
分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区