100개의 파일을 생성하려면 시드, 출력( HA.xyz
) 및 이름 파일의 값을 변경해야 합니다.
# MSA: H2O
seed 129472
tolerance 1.0
filetype xyz
output HA.xyz
Structure H2O.xyz
number
inside cube
end structure
Structure .xyz
number
inside cube
end structure
답변1
while read -r seed name; do
sed -e "s/^seed.*/seed $seed/" \
-e "s/^output.*/output $name/" template.txt >"${name%.*}-$seed.conf"
done <file.in
그러면 이라는 파일이 읽혀집니다 file.in
. 파일 형식은 다음과 같아야 합니다.
00000 filename.ext
(첫 번째 열의 시드 값, 공백 및 파일 이름)
이 명령은 템플릿 (질문에 표시된 형식의 파일)을 가져 sed
오고 새 파일을 생성합니다.template.txt
새 파일의 이름은 다음과 같이 지정됩니다 filename-00000.conf
(파일 확장자 없이 파일 이름 및 file.in
파일의 시드 사용).
표현식은 sed
단순히 template.txt
or로 시작하는 행을 찾아 적절한 값을 삽입합니다.seed
output