我想从文件夹中选择并复制N行数的文件。
如何在Bash中执行此操作?
铝。
答案 0 :(得分:1)
您可以使用bash中的循环执行此操作:
for f in *; do
[ -f "$f" ] && [ $(wc -l < "$f") = 8 ] && cp "$f" "$dest"
done
这将循环遍历目录中的所有文件和文件夹。第一个测试检查目标是否为文件。第二行检查行数是否为8.如果两者都为真,则cp
文件为"$dest"
。
编辑:如果您还想包含隐藏文件,可以将循环更改为for f in .* *
。谢谢@chepner将此引起我的注意。