텍스트를 확인하고 파일에 저장하는 스크립트

텍스트를 확인하고 파일에 저장하는 스크립트

사용자에게 이름, 성, 나이를 입력하도록 요청하는 스크립트에 대한 예를 들어줄 수 있습니까? 그런 다음 이름과 성에는 문자만 포함되고 나이에는 숫자만 포함되는지 확인하세요. 그리고 정보가 정확하면 파일에 추가됩니다.

답변1

이건 숙제처럼 들리므로 누구도 대신 스크립트를 작성해 주면 안 됩니다.

대신 다음 두 명령을 사용하는 방법을 배우는 것이 좋습니다.

답변2

echo메시지를 표시하는 데 사용 하고 read입력 줄을 읽는 데 사용합니다. 이는 쉘 내장 기능이므로 자세한 내용은 쉘 설명서를 참조하세요.

echo "What is your name?"
read -r name
echo "What is your age?"
read -r age

나이를 확인하려면 숫자 이외의 문자가 포함되어 있는지 확인하세요. 이를 허용하는 유일한 휴대용 내장 쉘 구성은 다음과 같습니다 case(일부 쉘에는 정규식 일치를 위한 확장 기능이 있습니다).

case $age in
  *[!0-9]*) echo 1>&2 "Your age must consist of digits only."; exit 2;;
esac

이름을 확인하려면 인쇄할 수 없는 문자가 포함되어 있는지 확인하세요. (참고하세요이름에는 거의 임의의 문자가 포함될 수 있습니다.; 또한 모든 사람이 "성"을 갖고 있는 것은 아닙니다. 이름을 임의의 문자열로 취급합니다.)

case $name in
  *[![:print:]]*) echo 1>&2 "Your name must consist of printable characters only."; exit 2;;
esac

답변3

숙제가 아니라면 PERL이나 Python을 사용해 보고 간단히 PERL을 다음과 같이 읽도록 제안합니다.

$name = <STDIN>;
chomp $name;
($forename, $surname) = split(<regex>, $name);
if($surname =~ /<regex>/) execute something

Python은 비슷할 것이므로 계속해서 살펴보십시오.PERL 정규식. 스크립트는 정확하지 않지만 아이디어를 얻을 수 있습니다.

관련 정보