有没有办法csplit
通过模式设置输出名称?我想将主机的 ssh-config 拆分到相应的文件中。
如果有没有解决方案csplit
我也很高兴。
答案1
不可以,csplit
只能在输出文件名中使用整数编号。如果您希望输出文件基于内容,请使用其他工具,例如 awk 或 perl。
awk '
BEGIN {out="_"}
$1 == "Host" {if ($2 ~ /\//) exit(1); out=$2}
{print >out}'
请注意,此代码仅执行基本的错误检查(我至少确保它只会写入当前目录)。不要在不受信任的文件上运行它。