sed

除第一个单词外,其他行完全相同,将第一个单词放入变量中
sed

除第一个单词外,其他行完全相同,将第一个单词放入变量中

我有一个文件 (sudoers),其中的行除了第一个单词外可以完全相同(不同的用户可以执行同一组命令)。我可以使用以下命令提取这样的行: # grep -v '^ *%' /etc/sudoers |egrep "$users_in_which_I_am_interested | sort|awk '{sub(/^[ \t]+/, "")};1' tom ALL = NOPASSWD:/usr/bin/pwdadm,/usr/bin/chsec,/usr/bin/chuser jim ALL = NOPASSWD:/usr/bin/pwdadm,/...

Admin

sed 不会消耗行的剩余部分
sed

sed 不会消耗行的剩余部分

我在 txt 文件中存储了一行不同的单词 N/A 9.0 Yes Yes N/A N/A N/A N/A 8.8 Yes Yes N/A N/A N/A N/A 8.7 Yes Yes N/A N/A N/A N/A 9.2 Yes Yes Yes Yes Yes Yes 9.1 Yes Yes Yes Yes Yes Yes 9.0 Yes Yes Yes Yes Yes Yes 8.8 Yes Yes Yes Yes Yes Yes 8.7 Yes Yes Yes Yes Yes Yes 22.04 Yes Yes Yes Yes Yes Yes AK...

Admin

搜索和替换不适用于 sed busybox。出现 sed:不匹配的“/”错误
sed

搜索和替换不适用于 sed busybox。出现 sed:不匹配的“/”错误

我正在尝试搜索特定的字符串并替换文件内的所有出现的内容。 sed -i -e "s/$search_string/$replace_string/g" $filePath 我sed: unmatched '/'在 BusyBox v1.35.0 上不断收到错误。但是在我的本地系统上,同样的事情却运行正常。 和不,既不包含 $search_string也不$replace_string包含任何/。为了以防万一,我也尝试使用所有类型的分隔符。 ...

Admin

为什么 sed 在一夜之间就停止使用表情符号了,但只有 3 台机器中的 1 台?
sed

为什么 sed 在一夜之间就停止使用表情符号了,但只有 3 台机器中的 1 台?

我有 3 台机器,都在 TCC 命令行下运行相同版本的 sed(cygwin)。 今天早上,我醒来发现 sed 无法处理表情符号,但只有 3 台机器中的 1 台可以。 这 3 台机器上的 sed 版本相同,并且其中一台正常工作的机器上的 TCC 命令行版本为 28,另一台机器上的 TCC 命令行版本为 31,而出现故障的机器上的 TCC 命令行版本为 31。 换句话说,该错误与版本无关。 C:\>echo gOlIaTh | sed -e 's/goliath/GOLIATH/gi' GOLIATH C:\>echo gOlIaTh | sed...

Admin

sed 搜索替换正则表达式模式以替换路径中的重复字符串
sed

sed 搜索替换正则表达式模式以替换路径中的重复字符串

我在使用它来替换文件路径的特定重复部分时遇到了一些麻烦sed,我无论如何也无法弄清楚如何让它工作。 例如,假设我有一个文件路径列表: 输入.txt gs://example-bucket/H20/H20AC0010001999B-01.jpg gs://example-bucket/H20/H20AC0010001999B-02.jpg gs://example-bucket/H20/H20AC0010001999B-03.jpg 我想保留文件夹结构但删除文件名本身中的相同引用: 理想输出.txt gs://example-bucket/H20/AC001...

Admin

rstrip 通过 sed 管道传输的文本行
sed

rstrip 通过 sed 管道传输的文本行

因此,我尝试在通过管道传输到 sed 的文本行上实现 rstrip 函数,但遇到了麻烦。以下是我认为应该可行的方法: cat file1.txt | sed 's/[[:blank:]]+$//g;' > testrstrip.txt 当我测试代码时,它对输入没有任何影响。 这是一个测试和结果的示例(输出中的引号仅用于显示空格。所有空格都是空格) echo "babillion "| sed 's/[[:space:]]+$//g;' > testrstrip.txt "babillion " 输出末尾还有一个换行符,我无法显示...

Admin

查找日期并将其替换为 UTC 日期
sed

查找日期并将其替换为 UTC 日期

我有一个如下文件: [2024-01-20 15:23:00] hello world [2024-01-20 15:42:00] bye [2024-01-20 15:43:00] foo bar ... 此文件中的日期为 UTC+1,我想将其转换为 UTC 我尝试使用sed捕获组: cat file | sed -E "s/(([0-9]+-[0-9]+-[0-9]+)? ?([0-9]+:[0-9]+:[0-9]+))/$(date -d "\1 UTC+1" +%H:%M:%S -u)/g" 但我得到了: date: invalid date ‘...

Admin

为什么尽管我的文本文件的物理大小增加了,但其 .gz 压缩文件的大小却明显减小了
sed

为什么尽管我的文本文件的物理大小增加了,但其 .gz 压缩文件的大小却明显减小了

我有一个大型测试文件,其.gz格式约为 13 GB。我替换了原始文件中的子字符串,并将文件压缩为.gz格式。 为此,我使用了以下 Linux 命令: zcat $inFile | sed -e "s/0\/0:.:.:./0\/0:.:1,0,0:./g" | gzip > $outFile 0/0:.:.:.—> 0/0:.:1,0,0:。 如您所见,我将一个字符替换为 5 个字符,但输出文件的物理大小仍约为 12 GB。 有人能帮助我了解这里发生了什么吗? ...

Admin

我如何告诉 sed 停止尝试处理命令?
sed

我如何告诉 sed 停止尝试处理命令?

也许我是个白痴(这是可能的情况,而且我对 sed/bash 脚本还不熟悉),但为什么这样做有效呢: NewVersion="$(echo $NewVersionFile | sed 's/^.*-\([0-9]*\.[0-9]*\.[0-9]*\).*/\1/')" 但事实并非如此: NewVersion={echo $NewVersionFile | sed 's/^.*-\([0-9]*\.[0-9]*\.[0-9]*\).*/\1/'} 第二条命令的结果是sed: -e expression #1, char 39: unexpected }' 我怎样...

Admin

GNU sed 选项分隔符的历史是什么?
sed

GNU sed 选项分隔符的历史是什么?

他们说 GNU sed 支持使用命令字符后面的任何字符作为命令选项的分隔符,如下所示。 echo abc | sed 'y%abc%ABC%' 但我找不到这方面的文档官方手册。这有什么历史?文档是否缺失?或者这是一个未记录的功能? ...

Admin

AWK 将一些特殊的新行替换为一行
sed

AWK 将一些特殊的新行替换为一行

我有一些像这样的日志: 2023-11-15T08:59:28.000000+00:00 database-1 # Time: 231115 8:59:28 # User@Host: rdsadmin[rdsadmin] @ localhost [] # Thread_id: 3 Schema: QC_hit: No # Query_time: 0.000123 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0 # Rows_affected: 0 Bytes_sent: 49 SET tim...

Admin

sed awk 截断以换行并选择特定字段
sed

sed awk 截断以换行并选择特定字段

我的文件中有三行这样的行 this is the first line blah1 blah2 this is the next line 0.101 0.202 0.303 this is the answer 0.404 期望 this is the first line 0.202 0.303 -0.404 可以使用 sed/awk/truncate (tr) 等在一两行内实现吗? ...

Admin

将 1 行(逗号分隔)文本文件转换为多行
sed

将 1 行(逗号分隔)文本文件转换为多行

如何转换以下格式的文本文件: ["word01","word02","word03","word04","word05","word06","word07","word08","word09"] 格式如下: word01 word02 word03 word04 word05 word06 word07 word08 word09 我使用 Windows,我想从 .bat 文件中执行此操作,我已经阅读了有关 SED、AWK 命令的信息,但无法实现。 ...

Admin

如何从 UNIX/Linux 输出中删除修复子字符串?
sed

如何从 UNIX/Linux 输出中删除修复子字符串?

我的问题看起来很简单,但是: 我想删除整个字符串,而不是字符列表,所以我不能使用tr。 我不知道我的子字符串的位置,所以我无法使用cut。 我没有使用正则表达式,但是我的子字符串是一个命名空间,所以它确实包含点,所以我不知道如何使用sed。 要点如下:我有以下几行: 2023-10-01 15:38:35.2545 | Info | Company.Customer.Server.Communication.Connection.ConnectionManager.SendNextTelegram | Message sent to Server: &l...

Admin