我需要一些批次的“sed”
现在有很多要求,
谁能告诉我如何将所有的需求和sed本身放在一个目录中运行??[因此无需安装,即可正常工作]
因为我需要公开批处理文件,所有这些要求似乎都给了用户大量的工作…我在前面的问题中提到过。
您可以将cygwin1.dll与一起复制到一个目录中,它应该可以工作
这是另一个正在讨论的问题。
它建议使用而不是Cygwin。您是说分发sed二进制文件吗
如果是这样,那么您可以在其上运行ldd以查看需要哪些共享库
您还可以从源代码重新编译它以使用静态链接,并删除任何外
我有一个从日志文件中截取的示例
112 172.172.172.1#50912 (ssl.bing.com):
我想知道如何从url中删除和()后面的#和数字
我想知道结果
112 172.172.172.1 ssl.bing.com
这是我一直在开发的sed oneliner
cat newdns.log | sed -e 's/.*query: //' | cut -f 1 -d' ' | sort | uniq -c | sort -k2 > old.log
谢谢使用sed,您
嗨,我在找一个又快又脏的答案
我尝试从数据文件中使用gnuplot制作曲面或轮廓图。问题在于文件格式:
都在一排
第1行到第32行包含x坐标1-32和y=1的值,
第33行是x=1和y=2的值,依此类推。。。
我尝试使用everyline命令来实现这一点,但由于它们之间没有空行分隔,因此无法工作。
因为这个数据文件是一个输出文件,我从我的程序中得到了很多,所以修改每个文件是不可行的。如果我能找到一种直接使用gnuplot的方法,那将是最好的
我也用sed进行了尝试,但我还没有将值从一行提取到另一
我去接塞德。当使用模式指定行地址时,我很难理解sed中的行地址是如何工作的
我有一个名为emp.lst的示例文本文件,其中包含以下内容:
2233|a.k. shukla |g.m. |sales |12/12/52|6000
9876|jai sharma |director |production|12/03/50|7000
5678|sumit chakrobarty|d.g.m. |marketing |19/04/43|6000
2365|ba
我正在努力使用sed命令
我想将文件中的IP地址更改为10.2.22.222:8000
该文件包含以下内容
Uri = 10.1.11.111:8000
我相信下面的代码是好的
sed -e "s/[0-9]{1-3}.[0-9]{1-3}.[0-9]{1-3}.[0-9]{1-3}:[0-9]{1-4}/10.2.22.222:8000/"
然而,它不能正确工作,即使我相信我的正则表达式是正确的
我该怎么办?您的正则表达式不正确,范围量词语法是{min,max},而不是{min-max}。
我正在尝试编写一个sed表达式,可以从文件中删除URL
范例
http://samgovephotography.blogspot.com/ updated my blog just a little bit ago. Take a chance to check out my latest work. Hope all is well:)
Meet Former Child Star & Author Melissa Gilbert 6/15/09 at LA's B&
您好,我想使用sed搜索一个文件,搜索3-5个字母字符和3个数字,并在第一个字母字符后插入冒号,在数字前插入冒号,使用Ubuntu 10.04.2 LTS上的GNU sed:
sed -r -e 's/([a-zA-Z]{3,5})([0-9]{3})/\1:\2/g'
编辑:误读了OP的问题。更好的答案是:
sed -r -e 's/([a-zA-Z])([a-zA-Z]{2,4})([0-9]{3})/\1:\2:\3/g'
如果您希望字符串abcdef123或abcde1234失败,您
我在shell脚本中有一个环境变量文件,例如:
# This is a comment
ONE=1
TWO=2
THREE=THREE
# End
#!/bin/sh
# Read variables
source ./vars
# Change a variable
THREE=3
# Write variables back to the file??
awk 'BEGIN{FS="="}{print $1=$$1}' <./vars >./vars
在我的脚本中,我将这个文
我有以下文件:
$cat somefile
Line1 T:10 Hello
Var1 = value1
Var2 = value2
Line2 T:2 Where
VarX1 = ValueX1
VarX2 = ValueX2
Line3 T:10 AAAA
Var10 = Val1
Var11 = Val11
Line4 T:10 ABCC
Var101 = Val110
。。。
我需要的是通过给出搜索条件,它应该得到多行。
例如,如果搜索条
输入文件:
$ cat t.txt
id1;value1_1
id1;value1_2
id2;value2_1
id3;value3_1
id4;value4_1
id4;value4_2
id5;value5_1
结果将是:
id1;value1_1;id1;value1_2
id3;value3_1
id4;value4_1;id4;value4_2
id5;value5_1
id1;value1_1;id1;value1_2
id2;value2_1
id3;value3_1
id4
我有一个定义明确的问题,似乎是sed的一个很好的候选人
我的输入文件包含两个令牌之一:
[文件]或[行]
结构如下所示:
[FILE]: C:\Users\user\git\build.xml
[FILE]: C:\Users\user\git\dataload-pom.xml
[FILE]: C:\Users\user\git\local.properties
[LINE]: [job.mail.toAddress=]
[LINE]: [log.mail.toAddress
这个问题是这个问题的续集
假设我有一个普通的txt文件/Users/myname/Desktop/urlist.txt:
title 1
http://a.b/c
title 2
http://d.e/f
...
我想(1)将所有的URL(.)转换为HTML代码,(2)添加
到每个空行,以便上述内容将成为:
title 1
<a href="http://a.b/c">http://a.b/c</a>
<br />
title 2
标签: Sed
Grep
substringvmware-workstation
我有这个:
Product Name Product Version
==================== ====================
vmware-workstation 9.0.2.1031769
我可以通过以下方式获得vmware workstation部件:
$ vmware-installer -l | grep -Po "(?=v)[^ ]*(?= )"
如何获取版本号部分(没有构建,意思是9.0.2)
这:
(?:)
避免使用s
我正在尝试插入此文本
"error.emailNotActivated":"This email address has not been activated yet."
。。。在第5行使用sed
这是我目前的命令
translated=“此电子邮件地址尚未激活。”;
sed-i'-e'5i\'$'\n''错误。emailNotActivated:“'\'$translated\'”local.strings;
不幸的是,我一直收到错误消息“无效命令代码T”。
sed似乎将冒号解释为命令的一
在这方面确实需要一些帮助,尝试使用sed(希望这是最好的解决方案)替换每个lat-long块的最后一个逗号。下面的例子
原始文件
;REGION
SOLID,
LAT,LONG,
LAT,LONG,
LAT,LONG,
LAT,LONG,
;REGION
SOLID,
LAT,LONG,
LAT,LONG,
LAT,LONG,
LAT,LONG,
LAT,LONG,
LAT,LONG,
LAT,LONG,
;REGION
SOLID,
LAT,LONG,
LAT,LONG,
LAT,LON
我想从文件中删除少于2列的行:
awk '{ if (NF < 2) print}' test
one two
如果要根据条件将输入拆分为两个文件(名为“通过”和“失败”):
awk '{if (NF > 1 ) print > "pass"; else print > "fail"}' input
如果您只是想过滤/删除NF2的行重定向到一个文件,以及NF为的行?请澄清:您的问题不明确。文本中说“小于2”(即NF
我需要在shell脚本处理文件方面的帮助。脚本应该读取路径中的每个文件,并替换每行中的字符串
它应该读取每一行,并用样本输出中提到的XXXX替换第7列。感谢您在这方面的任何帮助
输入文件数据
"2013-04-30"|"X"|"0000628"|"15000231"|"1999-12-05"|"ST"|"2455525445552000"|"1111-11-11"|75.00|"XXE11111"|"224425"
"2013-04-30"|"Y"|"0000928"|"95000232"|"1
如果有人知道如何轻松做到这一点,请告诉我。我的结论如下:
mac: 24:A4:3C:74:C0:49 name : SomeSome1 lastip : 192.168.1.178 txpower : 56 quality : 97 capacity : 95
mac: DC:9F:DB:62:10:BF name : SomeSome2 lastip : 192.168.1.58 txpower : 56 quality : 97 capacity : 11
mac: DC:9F:DB:3E
标签: Sed
Awk
fieldcuttext-parsing
我有一个带有管道分隔字段的文件。我想打印字段1的子集和字段2的全部:
cat tmpfile.txt
# 10 chars.|variable length num|text
ABCDEFGHIJ|99|U|HOMEWORK
JIDVESDFXW|8|C|CHORES
DDFEXFEWEW|73|B|AFTER-HOURS
我希望输出如下所示:
# 6 chars.|variable length num
ABCDEF|99
JIDVES|8
DDFEXF|73
我知道如何获取字段1和字段2
标签: Sed
text-filesnewline
我有一个这样的文件,infle.txt:
foo bar
hello world
blah blah black sheep
我想得到:
foo
bar
hello
wolrd
blah
blah
black
sheep
我试过这个
echo infile.txt | sed -e 's/[[:space:]]/\n/g' | grep -v '^$'
但它无法识别换行符和输出:
foo
bar
hello
wolrd
blah
blah
black
sheep
如何实现
标签: Sed
insertlimitmy.cnf
我正在运行以下sed命令来编辑带有特定参数的my.cnf。然而,它得到了我需要检查和修改的最后两个值,尽管语法与之前修改的值没有什么不同,但都没有执行
sed -i s/".*old_passwords=[0-9]*"/"# old_passwords=1"/g /home/david/systems/zabbix/2.2/2.2.5/confs/my.cnf
sed -i '/innodb_buffer_pool_size=/d' /home/david/systems/zabbix/2.2/
我尝试使用sed搜索文件中的最后一个事件。在HP-UX中,tac选项不可用
例如:下面是文件中的数据
A|2121212|666666666 | 2|01|2 |B|1111111111 |234234234 |00001148|
B|2014242|8888888888| 3|12|3 |B|22222222222 |45345345 |00001150|
C|4545456|4444444444| 4|31|4 |B|3333333333333 |4234234 |00001148|
我正
我有一个充满行的文本文件,看起来像:
Female,"$0 to $25,000",Arlington Heights,0,60462,ZD111326,9/18/13 0:21,Disk Drive
我正在尝试将所有逗号,更改为管道|,引号中的逗号除外。
尝试使用sed(我是新手)。。。而且它不起作用。使用:
sed '/".*"/!s/\,/|/g' textfile.csv
有什么想法吗?使用awk可以:
kent$ cat f
foo,foo,"x,y,z",foo,"a,b,c"
我试图在文件开头插入一行包含以下字符:~o。我正在使用:sed-i''“1s/^/~o\n/”宏,但换行选项根本不起作用。我应该如何改变它?谢谢您可以使用insert命令i:
sed '1i\TEXT TO INSERT' file
说明:
1 Addresses the first line
i The insert command inserts the following
text before(!) line 1
\ Required after i
我有一个html文件,其中包括以下部分:
<div id='webnews'>
... variable stuff ...
</div>
<!--
<div id='webnews'>
... variable stuff ...
</div>
-->
sed '/<div id="webnews"/, /<\/div>/ { p }' filename.html
... 可变的东西。。。
我想评论如下:
我正在使用sed合并目录中的文本文件行。
命令cd dir&&sed-e'N;s/\n/'*.txt可以很好地实现这一点,但是否有任何方法可以对其进行调整,使其仅将以**开头的行句子与以下以**结尾的句子组合在一起。所以
This is Line1
**This is Line2
This is Line3**
This is Line4
This is Line5
变成
This is Line1
** This is Line2 This is L
我能够分别删除具有特定模式和较短sed'/^.\{,20\}$/d'-I文件或较长sed'/^.\{25\}.*/d'-I文件的行,但如何在sed中统一模式和长度
包含字符的行应介于20到25个字符之间
包含B的行应介于10到15个字符之间
包含C的行应介于3到8个字符之间
应该从文件中删除所有其他行
1234567890 A 1234567890
12345 A 12345
1 A 1
1234567890 B 1234567890
12345 B 12345
1 B 1
1234567890
我使用以下内容替换行号29到32上的文本:
sed -i '29,32 s/^ *#//' file
如何在上述命令中进一步添加行号,即line35到38、line43和line45m是一个标签
sed -i '29,32bm;35,38bm;43bm;45bm;b;:m;s/^ *#//' file
从man sed:
b标签:分支到标签;若省略了标签,则分支到脚本的末尾
:标签:b和t命令的标签
这可能适用于您(GNU-sed):
使用awkawk'NR>28&&NR34&&NR
我试图用sed操作一个数据集,这样我就可以成批地操作它,因为数据集具有相同的结构
我的数据集有两行(本例中的第一行是第7行),如下所示:
Enginenumber; ABX 105;Productionnumber.;01 2345 67-
"",,8-9012
我想要的是:
Enginenumber; ABX 105;Productionnumber.;01 2345 67-8-9012
因此,第二行中的数字(8-9012)被添加到第一行的末尾,因为这些数字彼此属于
我所尝试的:
sed
我正在尝试递归地查找root的所有实例,并将其替换为usr/local
我知道这个命令:
find ./ -type f -exec sed -i -e 's/apple/orange/g' {} \;
在尝试用另一个字符串替换不带“/”的字符串时有效,但如何将“/”包含在替换的字符串中 要在替换中使用/,可以使用\进行转义,
或者s命令可以使用不同的分隔符:
sed 's|root|usr/local|g' ...
此外,(非标准)-i选项需要FreeBSDsed(1)中的一个参数,并扩展
我感谢你在这个问题上的帮助。我喜欢从字符串中删除所有非特定模式的内容
例如,下面我想消除所有不是“5TTGTC”的东西
但正如这里所见,^5TTGTC是不对的。我使用了^(),^{},^[]的不同组合,但没有一个能提供我所需要的。感谢您的反馈
echo ".,..,...+5TTGTC...+5TTGCC.+5TTGTC,,.,.,,.,+5ttgtc,.,,.,.+5TTGTC.+5TTGTC,..+5TTGTC" | sed 's/^5TTGTC//g'
提前感谢如果需要区分大小写,可以
[苹果操作系统]
似乎sed需要一个输入文件,而我无法通过管道将grep传递给它。虽然sed可以像grep一样匹配,但如果它同时处理查找和替换,则会使sed操作非常复杂
例如,如果我想删除以“T”开头的每一行的第三个字,那么分离find/replace命令要比创建复杂的正则表达式方便得多
综观如此多的答案,似乎没有一个优雅的解决方案可以在不涉及新文件的情况下将grep传输到sed。我确实找到了这个,它几乎满足了我的要求:
sed -i "s/$(grep 'old' input.txt)/new
我想用空格替换括号内的逗号(同时删除括号)。我使用了sed,但我能找到的解决方案取决于列表中的元素
sed 's/\[\(.*\), \(.*\)\]/\1 \2/g'
# [-0.0, 1.23] => -0.0 1.23 (works)
# [-0.0, 1.23, 4.56] => -0.0, 1.23 4.56 (doesn't work)
# foo=[12.3, 4.5, 3.0, 4.1], bar=123.0, xyz=6.7 => foo=1
我正试图用sed修改文件,但出现了一个我不理解的错误:
sed:-e表达式#1,字符0:没有以前的正则表达式
命令:
sed -e 's/^/"asset\//' example.txt
示例文件:
joe
john
peter
sed来自msys2:
which sed
sed是一个外部文件:C:\msys64\usr\bin\sed.exe
将文本添加到每行末尾时,以下操作符合预期:
sed -e 's/$/",/' y.txt
乔“,
约翰“,
彼得“
我无法理解这里的错误。编辑(
我有一个test.txt文件
---
kind: ClusterRole
metadata:
kind: ClusterRoleBinding
metadata:
subjects:
roleRef:
kind: ClusterRole
name: bla
并且需要这个sed输出(只需要与确切模式匹配的行)
sed-n'/kind:ClusterRole/,/metadata/p'test.txt
kind: ClusterRole
metadata:
kind: ClusterRol
我现在正在努力更新一些yaml文件,在sed的新行中添加一个元素
sed命令(或另一个linux命令)必须匹配字符串(image:或-image:),在新行中添加一个新元素,该新行的缩进与前一行相同
问题是新行必须正好位于字符串image:下,而不是-image:下
示例:当sed与字符串image匹配时,它会添加具有正确缩进的新行(就在image上方)
种类:守护程序
apiVersion:apps/v1
元数据:
名称:印花布节点
规格:
模板:
规格:
容器:
-名称:印花布节点
图片:m
我正在尝试重命名fastq头并使用sed commmand在fastq头的末尾添加“/1”。
这是我的密码:
sed i '1~4 s/$/\\1/g' seq/*_1.fq
但没有任何改变。有人知道如何解决这个问题吗?谢谢 对于与glob seq/*\u 1.fq匹配的文件,这将在第n*4+1行中添加/1,其中n>=0:
sed -i '1~4s/$/\/1/' seq/*_1.fq
您没有提供任何输入,此处是我使用的:
a
b
c
d
e
f
结果是:
a/1
b
c
d
e/1
f
我想从ini文件的节名创建一个变量,如:
[foo]
; ...
[bar]
; ...
[baz:bar]
;...
现在我需要一个像
SECTIONS="foo bar baz"
提前感谢我现在正在使用此构造,不需要知道是否存在节。只要读一下,如果它是空的,它就不存在了
INI_FILE=test.ini
function ini_get
{
eval `sed -e 's/[[:space:]]*\=[[:space:]]*/=/g' \
-e 's/;
我一直在用我们从硬件供应商那里得到的sed(在这里找到教程:)ASCII文件进行按摩。文件的结构如下
Model-Manufacturer:D12-500
Test_Version:2.6.3
但我们收到的一些文件是随机“损坏”的,并且遗漏了“型号制造商:”的条目:
我想用Sed解决这个问题,并在第二次出现“Test_Version:2.6.3”之前放置“Model Manufacturer:N/A”缺少的条目;这是我的密码
sed -n '
/Test_Version/ {
# found
我想处理cron文件,将时间和cron条目放入数据库的不同列中
cat root | awk '{print $1, $2, $3, $4, $5, $6}'
47 * * * * string=`find somefile`; echo $string > success.txt 2> err.txt
使用awk很容易awk cron的前5个占位符。但是如何选择实际的cron条目呢?
在上面的示例中,我想选择从“string”到“$string”的所有内容
我还想选择标准和错误
我的一个网站遭到恶意软件攻击。我将整个服务器下载到我的计算机上,需要找到所有包含特定字符串的文件,删除该字符串,然后再次保存这些文件。
这段代码已经成功地找到了所有带有该字符串的文件,但是我无法获得更多
FINDSTR /s /i /m base64 *.*
虽然我需要删除的完整字符串要长得多。
提前感谢。您是否打算让您的网站再次受到同样问题的影响
否则,只需使用任何支持“在文件中查找和替换”的文本编辑器(我们的VisualStudio支持所有版本,包括Express)并执行一次。使用正则表
我有一个像这样的data.txt文件
>1BN5.txt
207
208
211
>1B24.txt
88
92
我有一个文件夹F1,其中包含文本文件
F1文件夹中的1BN5.txt文件如下所示
ATOM 421 CA SER A 207 68.627 -29.819 8.533 1.00 50.79 C
ATOM 421 CA SER A 207 68.627 -29.819 8.533 1.00 50.7
我有以下很长的文件:
...
close unit 1
...
...
close unit 1
...
...
close unit 1
stop
我想在停止之前的最后一个关闭单元1之前插入多行。该文件包含未定义数量的关闭单元1
我在这里和那里发现了许多其他类似的问题,但答案对我没有帮助。。。例如,我尝试过,但没有成功…Perl解决方案:
perl -ne ' push @arr, $_;
print shift @arr if @arr > 3;
假设我的文本文件看起来像这样foobar foobar foobar barfoo。
我需要在bar的前面添加一行新行(注意“bar”前后的空格)
换句话说,在运行sed命令之后,我希望看到这一点
foobar foo
bar foobar barfoo
我试过以下方法,但没有一个有效!
sed-r's/bar/\nbar/;'
sed-r's/(bar)/\nbar/;' 这应该有效:
$ sed -r 's/ (bar )/\n\1/' file
foobar foo
bar foobar
我在unix论坛上发现了这个神奇的命令,可以将文件的最后一行移到文件的开头。我经常使用sed,但没有达到这个程度。有人能给我解释一下每一部分吗
sed '1h;1d;$!H;$!d;G' infile
是的,它使用奇异的命令
1h:将第一行放入“保持”空间(sed有2个空间:1个保持空间用于保存数据,模式空间:实际处理的行)
1d:删除第一行
美元!H:将除最后一行(以及自d命令跳到下一行后的第一行)以外的所有行追加到“保持”空间
美元!d:删除(不打印)除最后一行以外的所有行
G:在模式空
test.sed:
#!/bin/sed -Ef
/^(1|\+1)\(([0-9]{3})\)(555)-([0-9]{4})/d
/^\(([0-9]{3})\)(555)-([0-9]{4})/d
(123)456-7890
1(123)456-7890
+1(123)456-7890
(123)555-7890
1(123)555-7890
+1(123)555-7890
(416)736-5053
1(416)736-2100
+1(416)736-2100
(123)456
我有一个hocon文件,其中包含以下文本,我想取消注释其中包含CPU的行
// Size of buffer for events waiting to be processed by the fetcher. Typically, this should
// be at least 3-4x number of cores to ensure that the processing pipeline is making use of
//
以下是html文件的示例:
cat tmp.html
<table><td>123</td>1<td>456</td>2<td>789</td></table>
cat tmp.html
12314562789
我试图达到的最终结果应该是这样的:
<table><td>123</td><td>456</td><td>789&l
我在一个文本文件中有几行代码,如下例所示:
"2009217",2015,3,"N","N","2","UPPER DARBY FIREFIGHTERS "PAC"","","","","7235 WEST CHESTER PIKE","","UPPER DARBY","PA","19082","","6106220269",4245.0100,650.0000,.0000
我想在整个文件中替换多个部分字符串中的每个双引号,类似于上面的“PAC”
因此,对于重复双引号的每个实例,结果应如下所示
我有一个名为file.conf的文件,其中包含:
这是配置文本,这是要更改的单词
运行:
sed -i 's/WORD/"ONE TWO"/g' file.conf
我将修改file.conf:
这是配置文本,这是要更改的“一二”
现在,如果我制作一个脚本,使用read:
read -p 'word to change' TEXT -> "ONE TWO"
echo $TEXT -> "ONE TWO"
sed -i 's/WORD/'$TEXT'/g' file.conf
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 66 页