명령 매개변수에 대한 별명 생성

명령 매개변수에 대한 별명 생성

내 이메일 주소에 닉네임(foo)을 사용하고 싶습니다([이메일 보호됨]). 목표는 할 수 있다는 것이다.

echo "This is a test email" | mail -s "Email Title" foo

바꾸다

echo "This is a test email" | mail -s "Email Title" [email protected]

감사해요.

참고로 이전 줄을 실행할 때 예상대로 메일을 보낼 수 있는데 메일은 foo@something으로 이동합니다. 즉, 에 입력한 별칭을 인식하지 못합니다 /etc/aliases. 또한 /etc/aliases.

고쳐 쓰다

aliases /etc/aliases다음 줄을 추가하여 /etc/msmtprc다음 명령을 성공적으로 실행할 수 있었습니다 .foo: [email protected]/etc/aliasesecho "Hello" | msmtp tutmail

그러나 이것은 mail내가 좋아하는 명령으로는 작동하지 않습니다.

답변1

쉘 변수를 사용하시겠습니까?

foo='[email protected]'

echo "This is a test email" | mail -s "Email Title" "$foo"

변수 의 값은 foo변수 이름 앞에 붙여서 얻습니다 $.

"$foo"일반적 으로 변수 값이 공백(예: 값과 같은 값)으로 분할되는 것을 방지하기 위해 인용이 필요하며 , 변수 값을 파일 이름 글로빙 패턴으로 사용하는 것도 방지합니다."My Name" <[email protected]>

답변2

메일에만 관련된 질문인 경우 "를 참조하세요.개인 및 시스템 전체 배포 목록"

예를 들어, 사용자가 "그룹"에 메시지를 보내고 여러 사람들에게 메시지를 보낼 수 있도록 개인 배포 목록을 만드는 것도 가능합니다. 이러한 목록은 행을 배치하여 정의할 수 있습니다.

   alias cohorts bill ozalp jkf mark kridle@ucbcory

사용자 홈 디렉터리의 .mailrc 파일에 있습니다. 현재 범주 이름 목록은 mailx의 alias 명령을 사용하여 표시할 수 있습니다. 시스템 전체 배포 목록은 /etc/aliases를 편집하여 만들 수 있습니다. aliases(5) 및 sendmail(8)을 참조하세요. 이들은 서로 다른 구문으로 저장됩니다. 사용자가 보낸 메시지에서는 다른 사람에게 보낸 메시지에서 개인 별칭이 확장되어 수신자에게 답장을 보낼 수 있습니다. 시스템 전체 별칭은 메일이 전송될 때 확장되지 않지만 모든 메일이 sendmail을 통과하기 때문에 컴퓨터로 반환되는 응답은 모두 마찬가지입니다.

관련 정보