각 반복마다 텍스트 파일의 숫자를 임의의 값으로 바꿉니다.

각 반복마다 텍스트 파일의 숫자를 임의의 값으로 바꿉니다.

다음 내용이 포함된 텍스트 파일이 있습니다.

number of apples  7

쉘 스크립트를 실행하고 임의의 값(예: 5회 반복)으로 숫자를 수정하고 싶습니다. 따라서 다음과 같은 출력이 필요합니다.

number of apples  7
number of apples  8
number of apples  1
number of apples  5
number of apples  4

sed 명령을 사용해 보았습니다.

sed -i 's/Number of apples  7/Number of apples  '$((1 + RANDOM % 9))'/g' fruits.txt

반복 2에서 새 번호를 자동으로 감지하고 수정하려면 어떻게 해야 합니까?

답변1

범위의 정규식은 대괄호와 하이픈입니다. 따라서 [1-9]1부터 9까지의 숫자가 일치합니다.

즉, sed코드는 다음과 같이 변경됩니다.

's/Number of apples  [1-9]/Number of apples  '$((1 + RANDOM % 9))'/g'

관련 정보