Tôi đang tạo một kịch bản sao lưu cho ldap. Tôi muốn các lỗi đi đến một tệp trong / var / log và đầu ra để đi đến một tệp khác trong thư mục sao lưu. Hiện tại tôi đang chuyển hướng đến một tệp tạm thời và sau đó gửi tệp tạm thời đến nhật ký. Tôi muốn làm điều này như là một lớp lót mặc dù ...
/usr/bin/ldapsearch -x -LLL -b "dc=contoso,dc=com" "(objectclass=*)" -h ldap.server -v 2>>/tmp/ldaptmp.err |
gzip -c > /mnt/backups/ldap/`date +\%Y\%m\%d`.ldif.gz ||
logger -t ldapbackup -p local6.err error exit $?
cat /tmp/ldaptmp.err | grep -v "ldap_initialize( ldap://ldap.server )" |
grep -v "filter: (objectclass=\*)" |
grep -v "requesting: All userApplication attributes" >$ERR_LOG
rm -f /tmp/ldaptmp.err
Bất kỳ ý tưởng về cách chuyển hướng stderr và stdout đến các đường ống khác nhau để ngưng tụ lệnh này thành 1 dòng? đây có phải là cách tốt hơn không?