私はシミュレーションシェルスクリプトでseqをよく使用します。Git bashはそれを提供しないので、私は代替手段を探しています。
seq
Git bashでサポートされているコマンドの一部に代わるものはありますか?
現在の解決策:Ignacioの回答に基づいて、レガシースクリプトに単純なseq
関数を提供する小さなヘルパースクリプトを作成しました。また、変数で使用する場合は、展開されていない式の代わりにシーケンス出力を取得するためにecho {1..10}
を使用する必要があることにも気づきました。eval
a=0; b=5
eval echo {$a..$b} # outputs 0 1 2 4 5
echo {$a..$b} # outputs {0..5}
これが私の新しいseq.sh
です:
#!/bin/bash
# check for the real seq and export a new seq if not found
# import this script via `source ./seq.sh`
#
hasSeq(){
which seq >/devnull 2>&1
}
mySeq(){
case $# in
1) eval echo {1..$1};;
2) eval echo {$1..$2};;
3) echo "seq(3) not supported" 1>&2;;
esac
}
if ! hasSeq; then
seq(){
mySeq $*
}
fi
hasSeq || export -f seq