gpt4 book ai didi

linux - 是否可以覆盖您正在处理的文件?

转载 作者:太空宇宙 更新时间:2023-11-04 12:17:06 25 4
gpt4 key购买 nike

我想知道您是否可以覆盖您正在使用 bash 处理的文件?我已经对单词进行了排序,并且正在循环播放它。当我找到我想要的词时,我使用 && 将它保存到 file2,我想使用 ||从 file1 中删除它,但在下一次迭代中我想使用文件的更新版本。

while read word; do
[[string1==string2]] && echo something || delete word from file
done < file1 > file2

我尝试使用|| sed -i -e 's/$word//g' file1 但它不起作用。它创建具有奇怪名称的文件并且不更新当前文件。有什么想法吗?

最佳答案

除了一个一个地做之外,你可以批量做这些

grep -xvFf keys file > file_keys_removed

grep -xFf keys file > file_keys_only

或者使用 awk 一次性完成。

awk 'NR==FNR {a[$0]; next} 
{f=FILENAME "_keys_" (($0 in a)?"only":"removed");
print > f}' keys file

关于linux - 是否可以覆盖您正在处理的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47144038/

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