주어진 숫자에서 시작하여 한 줄에 하나씩 일련의 숫자 파일 인 얇은 공기를 생성하는 방법이 있습니까?
같은
magic_command start 100 lines 5 > b.txt
다음, b.txt
것
100
101
102
103
104
답변
이에 대한 명령이 이미 있습니다 :
seq 100 104
이 숫자를 별도의 줄에 인쇄합니다.
100
101
102
103
104
따라서이 출력을 파일로 보내십시오.
seq 100 104 > my_file.txt
그리고 seq 100 2 104
즉, 두 단위로 인쇄됩니다 : 100
, 102
,104
답변
리눅스 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
답변
세게 때리다:
printf '%s\n' {100..105}
펄 :
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 명령 편집 (open vim) :
i100[esc]qqyyp[ctrl-a]q2@q:w numbers-file.txt
숫자가 많을수록 2
그에 따라 증가하십시오 .
답변
사용 외에 seq
, while
, for
, printf
, perl
, echo
앞의 예에서와 같이, 당신은 또한 파이썬을 사용할 수 있습니다
python -c "print list(range(100,105))"
예:
[user@linux ~]~ python -c "print list(range(100,105))"
[100, 101, 102, 103, 104]
[user@linux ~]~