移动目录中少于 X 行的所有文件

move all files in a directory that have less than X lines

我正在尝试移动少于 X 行的目录中的所有文件(在我的例子中为 6)

我试过了:

find /path/folder/ -type f -exec awk -v lines=6 'NR>lines{f=1; exit} END{exit !f}' {} \; -exec echo mv output_folder/ {} \;

但是它不起作用,所有文件都被移动了。有什么建议吗?

因为这被标记为 bash

find /path/folder -type f -exec sh -c '
  for f; do
    total_count=$(wc -l < "$f")
    if [ "$total_count" -lt 6 ]; then
      echo mv -vn -- "$f" /destination
    fi
  done' _ {} +

一行。

find /folder/path -type f -exec sh -c 'for f; do total_count=$(wc -l < "$f"); if [ "$total_count" -lt 6 ]; then echo mv -vn -- "$f" /destination; fi; done' _ {} +