gpt4 book ai didi

linux - sed 没有回应我

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

我正在尝试使用 sed 但无法让它工作。我的系统是带有 GNU sed 4.2.2 的 Ubuntu 16.04.2

我有一个文件夹,里面有很多我想编辑的文本文件。从该文件夹中的终端,我尝试了以下操作(分别 - 一次一个命令)。

从所有文件中删除空行:sed -i '/^$/d' *txt

如果行中包含空格:sed -i '/^\s*$/d' *txt

删除第 4 行:sed -i '4d' *.txt

在每种情况下,终端中都没有错误消息,但不会发生更改。我尝试了相同的命令,但针对单个文件而不是所有文件,因此使用文件名而不是 *.txt,但仍然没有实现任何更改。

sed 处于事件状态的唯一标志是如果我不执行 -i 而是请求一个新文件:sed '4d' fred.txt > fred2.text

新文件 fred2 已创建 - 但第 4 行仍然存在!我错过了什么?我怎样才能让 sed 实际执行这些命令?感谢您的帮助。

最佳答案

在更详细地查看文件并进行一些试验后,我发现了问题所在:我试图用 sed 编辑的文本文件有 CR 行尾字符。当我将其更改为 LF 时,sed 命令运行良好。感谢那些提出建议的人。

关于linux - sed 没有回应我,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43137463/

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