2021-09-09【linux】丨shell使用for循环遍历文件/数组
目录
- 摘要
- for循环遍历文件使用方法
- 方法一
- 方法二
- 总结
摘要
在日常生信分析过程中,分析员或多或少会使用for循环批量处理样品或者分组。这里我简单整理一下自己常用的两种遍历方法。
for循环遍历文件使用方法
方法一
对于在同一个文件内的所有样品,使用 ls 可以遍历该文件夹内的所有文件名。
for i in `ls ./`;
do
echo ${i}
done
可能有时候还有一些脚本文件在里面, 我们可以使用 正则表达式 *来表示文件内的样品名
for i in *_R1.fastq.gz;
do
i={i%_R1.fastq.gz} #获取样品名前缀
echo ${i}_R1.fastq.gz ${i}_R2.fastq.gz
done
方法二
如果样品数目不多,可以直接添加样品前缀
for i in 18134R-104-01_S0_L001 18134R-104-02_S0_L001 18134R-104-03_S0_L001;
do
echo ${i}_R1.fastq.gz ${i}_R2.fastq.gz
done
或者设置数组,输入样品名
group=(18134R-104-01_S0_L001 18134R-104-02_S0_L001 18134R-104-03_S0_L001)#使用括号,样品名用空格分隔
for i in ${group[@]};
do
echo ${i}_R1.fastq.gz ${i}_R2.fastq.gz
done
总结
shell的for循环和R,python还是有些区别,尤其是数组循环。好好利用可以解决批量样品的处理以及差异分组的分析。
2021-09-09【linux】丨shell使用for循环遍历文件/数组相关推荐
- flac格式音频转wav|Linux 使用 Shell 循环遍历文件夹里的音频——简介
FLAC (无损音频压缩编码)-百度百科简介 使用sox工具把 flac 格式转wav,命令如下: sox 1.flac 1.wav 如果你的 flac 通道数.采样率.量化进度和wav不一致的话,需 ...
- Linux命令+shell脚本大全:查看文件内容
Linux中有几个命令可以查看文件的内容,而不需要调用其他文本编辑器(参见第10章).本 节将演示一些可以帮助查看文件内容的命令. 3.8.1 查看文件类型 在显示文件内容之前,应该先了解一下文件的类 ...
- (032) Linux之shell流控制for循环
十年运维系列之基础篇 - Linux 作者:曾林 联系:1494445739@qq.com 网站:www.jplatformx.com 版权:文章未经同意请勿转载 一.引言 本章是关于流控制的最后一章 ...
- Linux centosVMware shell编程 for循环、while循环、break跳出循环、continue结束本次循环、exit退出整个脚本...
一.for循环 语法:for 变量名 in 条件; do -; done 案例1 #!/bin/bash sum=0 for i in `seq 1 100` do sum=$[$sum+$i] ec ...
- Linux——Bash Shell脚本 for循环
1.创建和执行Bash Shell脚本 (1)借助Bash Shell环境和脚本编写功能,将Linux命令与shell脚本组合在一起,从而轻松的解决重复而困难的实际问题,Bash shell脚本最简单 ...
- linux命令行下写for语句,Linux下Shell的for循环语句示例
循环不管在程序中还是脚本中都需要经常用到,在写shell脚本时,经常需要for进行100次循环.for 循环是固定循环,也就是在循环时已经知道需要进行几次循环.有时也把 for 循环称为计数循环. S ...
- Linux下Shell的for循环语句
第一类:数字性循环 ----------------------------- for1-1.sh #!/bin/bash for((i=1;i<=10;i++)); do echo $(exp ...
- 【Linux】脚本实现for循环遍历数组
我最近在我的 Linux课上写出来一些初级的题目, 我解决问题之后,觉得还是把这些坑都写清楚,方便 Linux的初学者以及自己跟进一步理解. 1.编写脚本,实现遍历数组array=(Zero One ...
- shell怎样循环遍历字符串数组
Foo=("a" "b" "c" "d" "e") for name in ${Foo[@]} d ...
最新文章
- 简述java中的注释以及用法_怎样理解 Java 注解和运用注解编程?
- 技术宝典 | ToB 业务场景下自动化测试的实践及探索
- kubernetes-Service
- js网页顶部线性页面加载进度条,jquery头部线性进度条总结
- java hung_java – Hung JVM消耗100%的CPU
- java程序员 进阶_Java程序员进阶架构师的五个阶段,你到
- (九)把一切放在一起:用深度伪造换脸
- 这个严重的无补丁 UPnP 漏洞影响几乎所有的IoT设备:绕过安全系统、扫描LANs
- centos6.5安装mysql
- Spring:ReflectionUtils工具类使用一:Field
- 使用myEclipse开发Hibernate项目的步骤
- mysql 最大值65536_SQL server事物复制报错:要复制的 LOB 数据的长度(xxxxx)超出了配置的最大值 65536...
- oracle asm omf,Oracle Managed Files,OMF
- 快手开店怎么引流?快手小店自上线以来就吸引众多的商家入驻
- 20行Python小程序批量删除GitHub仓库,包
- ONES 解码:为何数字化是“超级工程”
- 牛顿法、梯度下降法与拟牛顿法
- 算法:求10万以内的质数
- CV_RETR_TREE’ was not declared in this scope
- 【Nodejs】外研社小学英语教材一年级起各年级英语音频下载(全)