循环运行

问题描述 投票:0回答:1

我想在bash中运行一个for循环,其中结束索引是一个命令的结果。

#!/bin/bash
# Basic range in for loop
for value in {0..$(ls | wc -l)}   
do
echo $value
done

wc -l)} do echo $value done But when I run it I see: {...

{0..14}
you can use
linux bash shell
1个回答
1
投票

By contrast, the brace notation will accept neither.eval is a GNU utility and is available on all linux systems as well as recent versions of OSX. Older BSD systems can use a similar utility called

for value in $(eval echo {0..$(ls | wc -l)})   
do
echo $value
done

seq.

for value in $(seq 1 `ls | wc -l`);
do
    echo ${value}
done

C-Style- pretty and simple :

seq jot

我想在bash中运行一个for循环,其中结束索引是一个命令的结果 #!binbash # for循环中的基本范围 for value in {0...$(ls)

© www.soinside.com 2019 - 2024. All rights reserved.