根据搜索条件复制行

Copy the line based on search criteria

我有一个 file1 包含:

apple_phones.csv
apple_ipad.csv
apple_mac.csv

需要复制n行到另一个文件file2

尝试过的代码:awk 'NR==1' "$file1" > "$file2"

这将创建文件 2,第一行来自文件 1。

但是,当我执行 awk 'NR==4' "$file1" > "$file2" 时,它会创建空文件 file2

在这种情况下,如果文件 1 没有第 4 行或第 4 行开头没有“苹果”,我不想创建文件 2。

awk 'NR==4 && [=10=] ~ /^apple/ {print > "file2"}' file1

当条件为真时,它将打印到 file2 否则没有打印,也没有创建新文件。