本文主要是介绍【linux基础】bash脚本的学习:定义变量及引用变量、统计目标目录下所有文件行数、列数,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
假设目的:统计并输出指定文件夹下所有文件行数
单个文件可以用 wc -l ;多个文件,可以用通配符 / 借助bash脚本
1.定义变量名,使用引号
a="bestqc.com.map"
b="Anno.variant_function"
c="enrichment/GOenrich.xlsx"
d="enrichment/KEGGenrich.xlsx"
2.合并变量,有空格/无空格
list="$a $b $c $d"
3.引用变量名
$list
4.读取列表变量值:从命令读取变量 如 for state in $(cat file.txt)
for state in $list
doecho $(wc -l $state)
done
合并所有步骤,保存到1个脚本 1.sh,如下:
#!/bin/basha="bestqc.com.map"
b="Anno.variant_function"
c="enrichment/GOenrich.xlsx"
d="enrichment/KEGGenrich.xlsx"list="$a $b $c $d"for state in $list
doecho $(wc -l $state)
done
修改脚本权限:chmod 777 1.sh
运行脚本及结果: ./ 1.sh
输出到新的文件夹:./1.sh > 1.txt
以上,可以简化为如下,根据通配符统计
统计文件列数
awk 'END{print NF}' bestqc1.bim
按指定分隔符统计列数
awk -F ',' 'END{print NF}' sname.csv
统计每行列数
awk -F',' '{print NF}' sname.csv
这篇关于【linux基础】bash脚本的学习:定义变量及引用变量、统计目标目录下所有文件行数、列数的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!