gpt4 book ai didi

linux - 如何使用 shell 脚本将可变数量的行从一个文件复制到另一个文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:19:21 26 4
gpt4 key购买 nike

我有一个 wpa_supplicant.conf 文件(WiFi 开发人员可能对它很熟悉)。我想将它开头的可变行数复制到另一个文件。每个 wpa_supplicant 都具有以下格式:

ctrl_interface=wlan0
update_config=1
device_type=0-00000000-0

network={
..

在前几行之后 network={.. 部分开始,但是它上面的行数是可变的。我不知道事先可能有多少行。有没有办法使用 shell 脚本将 network{.. 之前的所有部分复制到另一个文件?

最佳答案

这是 awk 的经典用例:

awk '{ if ($0 ~ /network=\{/) { exit } print }' wpa_supplicant.conf > /some/file

复制本身很简单,通过简单的重定向 > 即可完成。 注意这将覆盖/some/file。如果您想追加到文件而不是覆盖它,只需使用 >>>

更有趣的是第一部分,它包含一个 awk 脚本,它逐行读取和打印 wpa_supplicant.conf 并在一行与常规匹配时停止表达式 network=\{。我不打算详细解释这个脚本是如何工作的——如果你不熟悉 awk,你应该仔细阅读它,因为当你必须这样做时它经常派上用场时间限制下的各种事情。

关于linux - 如何使用 shell 脚本将可变数量的行从一个文件复制到另一个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24767254/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com