Linux 쉘 스크립트에서 일부 변수 값의 입력을 읽고 있습니다. 이러한 변수 값을 기반으로 입력을 사용하여 템플릿 파일을 변경해야 합니다.
예를 들어.
내용이 포함된 hello.txt 파일이 있습니다.
--- 템플릿 파일 hello.txt ---
Hello V_NAME
Welcome V_NAME to the team.
Thanks
쉘 스크립트에서 V_NAME 변수를 읽었습니다.남자
#!/bin/sh
....
....
read -p "Enter Candidates Name : " V_NAME
....
exit
그러면 V_NAME을 기반으로 hello.txt는 이제 다음과 같아야 합니다.....
--- 템플릿 파일 hello.txt ---
Hello **John** ,
Welcome **John** to the team.
Thanks
당신의 도움을 주셔서 감사합니다.
감사합니다 - 나비드 -
답변1
이 예는 양식 편지로 나타나므로 처리할 특이한 문자가 없을 것으로 예상됩니다. 명령은 sed
좋을 것입니다.
#!/bin/bash
...
read -p "Enter Candidates Name : " V_NAME
read -p "Enter Candidates start date : " V_STARTDATE
sed "s=V_NAME=$V_NAME=g;s=V_STARTDATE=$V_STARTDATE=g" ../template/hello > hello.$V_NAME
...
후보자의 이름이나 시작 날짜에 기호가 포함되어 있으면 이 작업이 중단됩니다 =
. 이는 템플릿이 다른 디렉터리에 있다고 가정합니다.
또 다른 방법은 문서를 사용 here
하고 템플릿을 스크립트에 포함시키는 것 입니다.
#!/bin/bash
...
read -p "Enter Candidates Name : " V_NAME
read -p "Enter Candidates start date : " V_STARTDATE
cat > hello.$V_NAME <<EOF
Hello $V_NAME
Welcome $V_NAME to the team. I see you will be starting on $V_STARTDATE.
Thanks
EOF
...
쉘이 교체를 수행하도록 하십시오.