回答:
これにはすでにコマンドがあります:
seq 100 104
これらの数値を別々の行に出力します:
100
101
102
103
104
したがって、この出力をファイルに送信するだけです。
seq 100 104 > my_file.txt
そしてseq 100 2 104
、すなわち、2単位で印刷されます:100
、102
、104
seq
UnixではなくGNU Coreutilsからのものです。GNUは、GNU is Not Unixの略です!
Linuxにseq
は、まさにそれを行うコマンドが付属しています。seq
コマンドがない場合は、簡単なワンライナーです。
i=100; while [ $i -le 104 ]; do echo $i; i=$((i+1)); done >b.txt
またはksh / bash / zshで
for ((i=100; i<=104; i++)); do echo $i; done >b.txt
またはzshで
print -l {100..104} >b.txt
$i
。
バッシュ:
printf '%s\n' {100..105}
perl:
perl -le 'print for 100..104'
紀元前:
echo 'for (i = 100 ; i <= 104 ; ++i) i' | bc
dc:
echo '100 104 sb [p 1 + d lb !<m] sm lm x' | dc
それらのほとんどの前にスペースを気にしない場合:
echo -e {100..104}\\n >numbers-file.txt
スペースなしで追加のコマンドを使用:
echo {100..104} | sed 's/ /\n/g' >numbers-file.txt
ボーナスvimコマンドの編集(vimを開く):
i100[esc]qqyyp[ctrl-a]q2@q:w numbers-file.txt
より多くの数については、2
それに応じて増やします。
printf '%s\n' {100..104}
使用した以外にもseq
、while
、for
、printf
、perl
、echo
前の例で示したように、あなたはまた、Pythonのを使用することができます
python -c "print list(range(100,105))"
例:
[user@linux ~]~ python -c "print list(range(100,105))"
[100, 101, 102, 103, 104]
[user@linux ~]~