특정 프로그램을 실행하기 위한 스크립트를 작성했습니다. 스크립트에는 많은 단계가 포함되어 있으며 그 중 일부는 단순히 0을 입력하고 Enter 키를 눌러 상호 작용해야 합니다. 상호 작용이 필요하지 않도록 하려면 어떻게 해야 합니까?
예를 들어:
이것은 세 번째 명령에 상호 작용이 필요한 스크립트의 일부입니다.
gmx .....
gmx mdrun
gmx trjconv -s md_0_1.tpr -f md_0_1.xtc -o md_noPBC.xtc -pbc mol
이제 터미널에서 마지막 명령을 계속 실행하려면 다음을 입력해야 합니다.
Select group for output
Group 0 ( System) has 189100 elements
Group 1 ( Other) has 189100 elements
Group 2 ( GRM) has 11200 elements
Group 3 ( G8LE) has 177900 elements
Select a group:
이 명령을 완료하려면 "0"을 쓰고 Enter 키를 눌러야 합니다. 그러면 스크립트가 다음 명령을 정상적으로 실행합니다.
동일한 작성된 스크립트를 사용하여 이를 어떻게 수행할 수 있습니까? 기대 함수에 대한 일부 게시물을 읽었지만 이를 내 경우에 적용하는 방법을 모르겠습니다.
답변1
샘플 스크립트가 있습니다샘플.sh:
#!/bin/bash
echo Enter parameter
read par
echo Read par $par
매개변수 파일을 준비할 수 있습니다 parameters.txt
. 0
그런 다음 다음을 실행합니다. ./sample.sh < parameters.txt
또는 다음과 같이 사용할 수 있습니다.echo 0 | ./sample.sh