gpt4 book ai didi

linux - bash sed命令中如何使用变量,具体示例

转载 作者:太空狗 更新时间:2023-10-29 11:48:49 24 4
gpt4 key购买 nike

我想将文件的一部分复制到新文件中。如果我使用:

sed -n '1641,1804p' oldfile.txt > newfile.txt

它工作正常。但是我想用变量替换谨慎的数字 1641 和 1804,这样我就可以将此代码用于不同大小的文件。所以我可以用变量代替:

$start=1641
$end=1804

然后我想将这些变量传递给 sed。我使用以下但它似乎不起作用:

sed-n "$start,$endp" oldfile.txt > newfile.txt

请帮忙!

最佳答案

分配变量时变量前面有“$”,这是不正确的。

要使用与文本连接的 shell 变量,或者用花括号将它们括起来的变量,以便 shell 知道变量在哪里结束。在您的示例中,shell 正在寻找不存在的变量 $endp

start=1641
end=1804
sed -n "${start},${end}p" oldfile.txt > newfile.txt

关于linux - bash sed命令中如何使用变量,具体示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51845955/

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