如何在bash中获取变量的长度?

时间:2010-10-09 22:19:15

标签: bash

我目前有一些形式

abc=`find ~/$folder .. etc

我想知道如何获取abc中的项目数:

abc_length = ?

由于

2 个答案:

答案 0 :(得分:4)

我不确定“items”是什么意思,所以我假设“目录条目”。假设你的名字中没有带换行符的文件,echo "$abc" | wc -l就可以了。

如果您想计算字符数,请改用wc -c

答案 1 :(得分:3)

使用数组:

abc=( $(find ...) )
abc_length=${#abc[@]}

检索第n个结果,比如说第10个:

echo ${abc[9]}

或列出所有:

for dir_name in "${abc[@]}"; do
  echo $dir_name
done

更新:提问者似乎不想在脚本中处理,所以:

abc_length=$(find ... | wc -l)

您可能希望将数字减少1,因为第一个结果是~/$folder

abc_length=$(( $(find ... | wc -l) - 1 ))