$tmpという一時ファイルを生成してしまうことが不満です。
一時ファイルを生成せずに、同じことをやる方法を教えてください。
#!/bin/sh
tmp=/path/to/tmp.txt
cd /target
for i in `ls`; do du -hs $i; done > $tmp
df -h >> $tmp
cat $tmp | mail -s "disk usage report" foo@bar.com
単純にパイプでつなげば良いのでは。
#!/bin/sh cd /target (for i in `ls`; do du -hs $i; done; df -h) | mail -s "disk usage report" foo@bar.com
#!/bin/sh cd /target ( for i in `ls`; do du -hs $i; done ; df -h ) | mail -s "disk usage report" foo@bar.com
ありがとうございます。
ありがとうございます。