gpt4 book ai didi

shell - 如何计算shell脚本中变量的行数

转载 作者:行者123 更新时间:2023-12-02 15:23:35 26 4
gpt4 key购买 nike

这里遇到了一些麻烦。我想将 ls 命令的输出捕获到变量中。然后稍后使用该变量并计算其中的行数。我尝试了一些变体

这有效,但如果没有 .txt 文件,它表示计数为 1:

testVar=`ls -1 *.txt`
count=`wc -l <<< $testVar`
echo '$count'

这适用于没有 .txt 文件的情况,但当有 .txt 文件时计数会减 1:

testVar=`ls -1 *.txt`
count=`printf '$testVar' | wc -l`
echo '$count'

此变体还表示当不存在 .txt 文件时计数为 1:

testVar=`ls -1 *.txt`
count=`echo '$testVar' | wc -l`
echo '$count'

编辑:我应该提到这是 korn shell。

最佳答案

正确的做法是使用数组。

# Use ~(N) so that if the match fails, the array is empty instead
# of containing the pattern itself as the single entry.
testVar=( ~(N)*.txt )
count=${#testVar[@]}

关于shell - 如何计算shell脚本中变量的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32727174/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com