参数值在ksh中从第二个单词开始截断

时间:2016-03-30 11:35:17

标签: unix ksh

我正在commonfuncs调用一个函数来发送电子邮件,如下所示:

#!/usr/bin/ksh
. commonfuncs
emailsend 'test mail' 'body of the mail' 'abc.efg@domain.com'

功能如下:

function emailsend
{
    esubject=$1
    etext=$2
    etolist=$3  
    efromid="from.id@domain.com"

    echo $etext >email.txt
    cat email.txt | mailx -r $efromid -s $esubject $etolist
}

电子邮件发送正常。但主题仅以test而非test mail发送。尝试使用双引号但没有用。

1 个答案:

答案 0 :(得分:0)

尝试使用malix命令的双引号参数进行换行:

cat email.txt | mailx -r "$efromid" -s "$esubject" "$etolist"

因为space字符是命令行arguemnts的分隔符。