ps -aux | grep 星号

ps -aux | grep 星号

我正在尝试使用找到的脚本通过电子邮件发送星号语音记录这里但它并没有发送文件,而是将文件路径放在所发送电子邮件的顶部。我相信所有权限都是正确的,日志文件也没有显示任何错误。我希望有人能帮助我进一步排除故障。

当我对电子邮件顶部的文件运行 ls -lrt 时,附件的文件名似乎是正确的。有没有办法让 postfix 为其日志添加更多详细信息?

剧本

#!/bin/bash
#This script emails the recorded call right after the call is hung up. Below are    the variables passed through asterisk
# $1 - year
# $2 - month
# $3 - day
# $4 - Time String
# $5 - Source
# $6 - File
# $7 - Destination
# $dt - Date and Time


dt=$(date '+%m/%d/%Y %r');


echo -e "You have a new call recording to listen to \n\n
 The call date and time was $dt \n\n 
 The call was from $5 \n\n
 The call was to $7 \n\n

 Please see the attached file \n\n" | mail -a /var/spool/asterisk/monitor/$1/$2/$3/$6 -s "New Call Recording" [email protected]

发送以下电子邮件

标题“新通话记录”

/var/spool/asterisk/monitor/2016/02/11/internal-99-101-20160211-123644-1455154604.21.wav

You have a new call recording to listen to 


The call date and time was 02/11/2016 12:36:53 PM 


The call was from 101 


The call was to 99 



Please see the attached file 

ps - aux 显示 Asterisk 以自己的用户身份运行

ps -aux | grep 星号

asterisk   619  0.0  0.8 314092  8532 ?        S    12:26   0:00 /usr/sbin/apache2 -k start
asterisk   621  0.0  0.8 314092  8532 ?        S    12:26   0:00 /usr/sbin/apache2 -k start
asterisk   622  0.0  0.8 314092  8532 ?        S    12:26   0:00 /usr/sbin/apache2 -k start
asterisk   623  0.0  0.8 314092  8532 ?        S    12:26   0:00 /usr/sbin/apache2 -k start
asterisk   624  0.0  0.8 314092  8532 ?        S    12:26   0:00 /usr/sbin/apache2 -k start
asterisk   971  1.2  4.9 1855636 50188 ?       Ssl  12:26   0:15 /usr/sbin/asterisk -U asterisk -G asterisk

mail.log 文件显示用户星号是发送出站邮件的帐户。

/var/log# cat mail.log

Feb 11 12:36:07 APSPBX postfix/pickup[1172]: 9B54061A6B: uid=1001 from=<asterisk>
Feb 11 12:36:07 APSPBX postfix/cleanup[1701]: 9B54061A6B: message-id=<20160211013607.9B54061A6B@APSPBX>
Feb 11 12:36:07 APSPBX postfix/qmgr[1173]: 9B54061A6B: from=<asterisk@APSPBX>, size=619, nrcpt=1 (queue active)
Feb 11 12:36:22 APSPBX postfix/smtp[1644]: 9B54061A6B: to=<[email protected]>, relay=smtp.gmail.com[173.194.72.108]:587, delay=15, delays=0.02/0/13/1.8, dsn=2.0.0, status=sent (250 2.0.0 OK 1455154590 s21sm7891538pfi.29 - gsmtp)
Feb 11 12:36:22 APSPBX postfix/qmgr[1173]: 9B54061A6B: removed

Postfix 尝试获取附件的文件夹和文件归 asterisk 用户所有。

ls -lrt /var/spool/asterisk/monitor/2016/02/11/

total 484
-rw-r--r-- 1 asterisk asterisk 139564 Feb 11 12:34 internal-99-101-20160211-123412-1455154452.7.wav
-rw-r--r-- 1 asterisk asterisk 213164 Feb 11 12:36 internal-99-101-20160211-123554-1455154554.14.wav
-rw-r--r-- 1 asterisk asterisk 135084 Feb 11 12:36 internal-99-101-20160211-123644-1455154604.21.wav

提前致谢

答案1

看来你正在使用GNU 邮件实用程序其中-a选项表示附加一个标题(见下文)。

−a, −−append=HEADER: VALUE 将给定的标题附加到正在发送的消息

至于邮箱实用程序-a选项指的是附件:

-一份文件

将给定的文件附加到消息。

因此,请检查您的操作系统和所使用的发行包。使用类似 的命令man mail,您可以自己找出您正在使用的邮件命令以及 -a 选项的含义。

对于替代解决方案,您只需使用以下mutt命令:

echo "Here goes the message body....." | mutt -a "/path/to/attachment_file" -s "Subject.." -- [email protected]

相关内容