df -h
パーティションの1つの出力を調べて、パーティションの1つにスペースが[またはほぼ]不足しているときに警告を発する可能性がある1行コードを作成しようとしています。今私を怒らせるのはxargsを使う部分です...
echo 95 | xargs -n1 -I{} [ {} -ge 95 ] && echo "No Space on disk {}% full -- remove old backups please"
2番目の{}にも「95」が表示されるようにするにはどうすればよいですか?
ベストアンサー1
これはコマンドの一部&&
ではなく、完全に別々の呼び出しです。xargs
私の考えでは、明示的にシェルを実行したいと思います。
echo 95 | xargs -I_percent sh -c '[ "$1" -ge 95 ] && echo "No Space on disk $1% full -- remove old backups please"' sh _percent
また、シェルの追加の引用の問題を回避するために代わりに_percent
使用していることに注意してください。{}
これはシェル変数ではありません。それでもxargs
代替文字列です。