最新のファイルのサイズが2MBより大きいことを確認したいと思います。
test $(ls -st | head -n2 | tail -n1 | awk '{print $1}') -gt 2097152 && echo "true"
これを行うより効率的でエレガントな方法はありますか?
私はawkの出力をさらにパイピングしようとしました。
| test {} -gt 2097152
しかし得る
bash:テスト:{}:整数式が必要です。
それから
| test {}>"2097152"
利回りは常に「真」なので、この仕組みを思い出しました。
test $(...) -gt 2097152
ベストアンサー1
ls
最新のファイルをインポートするよりも優れた方法があるかもしれませんが、実行する作業のほとんどはawkで実行できます。
ls -st | awk 'NR == 2 && $1 > 2097152 {print "true"}'
NR == 2
- 2行目$1 > 2097152
- 最初の列が2097152より大きい場合