创建一系列数字,文件中每行一个

Duc*_*uck 37 utilities files arithmetic text

有没有办法凭空创建一个由数字序列组成的文件,从给定的数字开始,每行一个?

就像是

magic_command start 100 lines 5 > b.txt
Run Code Online (Sandbox Code Playgroud)

然后,b.txt将是

100
101
102
103
104
Run Code Online (Sandbox Code Playgroud)

neu*_*n34 61

已经有一个命令:

seq 100 104
Run Code Online (Sandbox Code Playgroud)

将在单独的行上打印这些数字:

100
101
102
103
104
Run Code Online (Sandbox Code Playgroud)

所以只需将此输出定向到一个文件中:

seq 100 104 > my_file.txt
Run Code Online (Sandbox Code Playgroud)

并将seq 100 2 104以两个为增量打印,即:100, 102,104


Gil*_*il' 13

Linux 附带的seq命令正是这样做的。如果你没有seq命令,这是一个简单的单行:

i=100; while [ $i -le 104 ]; do echo $i; i=$((i+1)); done >b.txt
Run Code Online (Sandbox Code Playgroud)

或在 ksh/bash/zsh

for ((i=100; i<=104; i++)); do echo $i; done >b.txt
Run Code Online (Sandbox Code Playgroud)

或在 zsh

print -l {100..104} >b.txt
Run Code Online (Sandbox Code Playgroud)

  • 我每天都越来越喜欢 zsh。 (3认同)

Pet*_*lam 9

重击:

printf '%s\n' {100..105}
Run Code Online (Sandbox Code Playgroud)

珀尔:

perl -le 'print for 100..104'
Run Code Online (Sandbox Code Playgroud)

公元前:

echo 'for (i = 100 ; i <= 104 ; ++i) i' | bc
Run Code Online (Sandbox Code Playgroud)

直流:

echo '100 104 sb [p 1 + d lb !<m] sm lm x' | dc
Run Code Online (Sandbox Code Playgroud)