2016-03-22 11 views
4

forループで配列を制限したい。すべての私の試みはunsecsessfullだった。私は間違って何をしていますか?魚の殻の配列を制限するループを反復する方法

私は、これが動作する必要があることを考えた:魚と

for x in ((seq 100)[50..55]) 
    echo $x 
end 
+1

希望の範囲は何ですか? 50〜55? 'for((i = 50; i <= 55; i ++)); echo "$ i"; done' – Cyrus

+0

@Cyrusこれは魚の皮ではなく、bashで動作すると思います。 –

+0

これは、 'x for {50..55};試すことができます; echo $ x;完了しました。ありがとう。 –

答えて

8

for i in (seq 50 55); echo "$i"; end 

は出力:

 
50 
51 
52 
53 
54 
55 
+0

あなたは魚の殻のドキュメンテーションでそれを見つけましたか? –

+0

'help seq'とhttp://stackoverflow.com/a/20875348/3776858 – Cyrus

+0

' seq'は魚のものではないので、それは見つからないでしょう - これは外部ツールです( 'type seq'を参照) 。 GNU/Linuxシステムでは、GNU coreutilsの一部です。 – faho

4

あなたは括弧の1あまりにも多くのペアを持っています。フィッシュカッコでは、$(command)`command`はbashまたはzshで何を行いますか。だからあなただけを開始し、所望の値で終了するのseqコマンドを伝えることができるので、あなたも、スライス表記を必要としないこの特定の例のために、当然のことながら、

for x in (seq 100)[50..55] 
    echo $x 
end 

を行います。

関連する問題