我有一个 URL 文件,格式如下:
com.blendtuts/S
°=
com.blengineering.www/:http
±=
com.blenheimgang.www/le-porsche-museum-en-details/porsche-museum-3
²=
com.blenheimsi
³=
com.blenkov.www/page/media/18/34/376
´=
com.blentwell.www/bookmarks.php/jackroldan/sp
¸=
com.blentwell.www/tags.php/I
Run Code Online (Sandbox Code Playgroud)
文件大小以千兆字节为单位。说大约 250 GB 的文件大小。
我试图反转文件中的单词并仅从文本中提取域。我尝试使用 Ubuntu OS 终端命令来制作它。让我告诉你我的尝试:
首先,我使用以下命令删除了“/”之后的数据:
~$ ex -sc '%s/\(\/\).*/\1/ | x' newfile.txt > ddm.txt
Run Code Online (Sandbox Code Playgroud)
结果如下:
com.blendtuts/
°=
com.blengineering.www/
±=
com.blenheimgang.www/
²=
com.blenheimsi
³=
com.blenkov.www/
´=
com.blentwell.www/
¸=
com.blentwell.www/
Run Code Online (Sandbox Code Playgroud)
现在我使用以下解决方案反转文件中的完整文本:https : //stackoverflow.com/questions/40467918/how-to-reverse-the-word-in-ubuntu
并得到以下结果:
/blendtuts.com
°= /www.blengineering.com
±= /www.blenheimgang.com
²= blenheimsi.com
³= /www.blenkov.com
µ= /www.blentwell.com
¶= /www.blentwell.com
•= /www.blentwell.com
/www.blentwell.com
Run Code Online (Sandbox Code Playgroud)
但问题仍然没有解决。我想知道如何使用 Ubuntu 提取 URL 并将它们放入另一个文件中。正如您在输出上方看到的,我仍然拥有的不是域,它带有一个反斜杠。
如果使用任何其他操作系统可以解决此类问题,请告诉我。我更喜欢使用 Ubuntu。
我想从文件中提取域并将它们分离到另一个文件中,并且以正确的格式将它们分开。
如果我获得了唯一域,那么这将是我查询的绝佳解决方案。否则,我使用命令为:
$ sort …Run Code Online (Sandbox Code Playgroud) 我有一个 html 文件users.html,我想替换第一行。第一行看起来像这样
<template name="AccountSettings">
Run Code Online (Sandbox Code Playgroud)
我想读第一行
<template name="Users">
Run Code Online (Sandbox Code Playgroud) 我有一个文件,其中的一部分作为示例,如下所示,其中包含一个时间戳字段:
20161203001211,00
20161203001200,00
20161203001500,102
20161203003224,00
20161203001500,00
20161203004211,00
20161203005659,102
20161203000143,103
20161202001643,100
....
Run Code Online (Sandbox Code Playgroud)
我想根据时间戳处理此文件,以计算 15 分钟间隔内的发生次数。我知道如何每分钟都这样做,我也使用awk脚本在 10 分钟的间隔内完成,但不知道如何才能在 15 分钟的间隔内获得以下输出:
startTime-endTime total SUCCESS FAILED
20161203000000-20161203001500 5 3 2
20161203001500-20161203003000 2 1 1
20161203003000-20161203004500 2 2 0
20161203004500-20161203010000 1 0 1
20161202000000-20161202001500 0 0 0
20161202001500-20161202003000 1 0 1
....
Run Code Online (Sandbox Code Playgroud)
00 表示成功,其他情况表示失败记录。
是的,它是 24 小时,所以一天中的每个小时都应该打印 4 条间隔记录。
我有一个包含以下信息的文件:
用户名:sjohhny@email1.com 值一:xx:xx:xx:xx:xx:xx 值二:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx 值三:Sjohhny@email1.com@[xx:xx] [三个值的混合] 用户名:Vsamba@email3.com 值一:mm:mm:mm:mm:mm:mm 数值二:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm 值三:Vsamba@email3.com@[xx:xx] [三个值的混合] 用户名:Skrids@email2.com 值一:yy:yy:yy:yy:yy:yy 值二:yy:yy:yy:yy:yy:yy:yy:yy:yy:yy:yy:yy:yy:yy:yy 值三:Skrids@email2.com@[xx:xx] [三个值的混合] 用户名:Vconan@email4.com 值一:zz:zz:zz:zz:zz:zz 值二:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz 值三:Vconan@email4.com@[xx:xx] [三个值的混合]
首先,我想过滤掉所有以 S 开头的用户名信息,保留那些以 V 开头的用户名。之后,我想制作一个可以运行的 .sh 脚本的最终产品。我想做的是:
所以,我的 .sh 文件将与此类似
echo 用户名:Vsamba@email3.com 你好 -一个 mm:mm:mm:mm:mm:mm -Two: mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm:mm --谢谢 -访问 echo 用户名:Vconan@email4.com 你好一 zz:zz:zz:zz:zz:zz -二:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz:zz --Thanks -for -参观
我在 Youtube 上观看了关于 Sed 的整个视频系列,并阅读了这里的许多文章,试图想出一个可以生成我想要的脚本的脚本,但都失败了。你能告诉我如何编写这样的脚本吗?如果您推荐新用户可以阅读的有关 sed(或 Awk 或 Perl)的网站/参考资料,我也很乐意
请注意,“:”的数量对于值一和值二来说是静态的,这可能会以某种方式使用。我尝试使用它,但每次当我只要求一个值时我得到了两个值,但是你比我更知道如何利用这个事实。
抱歉问了这么长的问题!在没有自动化过程的情况下完成所有这些需要花费太多时间,而且我完全在 linux 世界(和一般的计算机,就此而言!)
我有一个文件,说“test.txt”:
5 80
3 70
4 60
Run Code Online (Sandbox Code Playgroud)
现在我想创建一个看起来像楼梯/台阶的 R 图:5 个数据点的 y 值 80,然后 3 个数据点的 y 值 70,然后 4 个数据点的 y 值 60,如下所示:
我怎么能转换test.txt为transformed.txt:
80
80
80
80
80
70
70
70
60
60
60
60
Run Code Online (Sandbox Code Playgroud)
在外壳上,或者直接从test.txt.
我有一些 CSV 文件。每个文件都有一个电子邮件地址列表。以下是从文件中提取的数据:
%%%%%%%%%%@yahoo.com
%%%%%%@wanadoo.fr
%%%%raviplywoodglasscentre@yahoo.comravi
%%nameemail%%@yahoo.com
%.getincontact@numberland.com
%1%3@example.com
%1@example.com
Run Code Online (Sandbox Code Playgroud)
我试图尝试的是从这些电子邮件地址中提取域,然后以将与某个域关联的电子邮件一起列出的方式排列电子邮件地址。
例如:
yahoo.com,%%%%%%%%%%@yahoo.com
wanadoo.fr,%%%%%%@wanadoo.fr
yahoo.comravi,%%%%raviplywoodglasscentre@yahoo.comravi
yahoo.com,%%nameemail%%@yahoo.com
numberland.com,%.getincontact@numberland.com
example.com,%1%3@example.com
example.com,%1@example.com
Run Code Online (Sandbox Code Playgroud)
我试图获得的最终输出如下所示:
yahoo.com,%%%%%%%%%%@yahoo.com,%%nameemail%%@yahoo.com
wanadoo.fr,%%%%%%@wanadoo.fr
yahoo.comravi,%%%%raviplywoodglasscentre@yahoo.comravi
numberland.com,%.getincontact@numberland.com
example.com,%1%3@example.com,%1@example.com
Run Code Online (Sandbox Code Playgroud) 我有一个 json 文件,我只需要删除最后一个正斜杠。看例子:
{"url":"http://example.com/vary/file/","originalUrl":"http://example.com/vary/file/","applications":[{.........}]}
Run Code Online (Sandbox Code Playgroud)
我只希望数据看起来像:
{"url":"example.com/vary/file","originalUrl":"example.com/vary/file","applications":[{.........}]}
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点sed?
我怎样才能使除第一列以外的所有内容小写?
喜欢:
1 ONE
2 TWO TWO
3 THREE THREE THREE
Run Code Online (Sandbox Code Playgroud)
所需输出:
1 one
2 two two
3 three three three
Run Code Online (Sandbox Code Playgroud) 我试图从文件中显示几行。我所知道的是这样的:
head -n48964204 xag
Run Code Online (Sandbox Code Playgroud)
但这将显示前面提到的行号。我正在尝试的是获取行号的记录48964203,48964204,and 48964205.
我也试过这个:sed -n 48964204p xag 但这只显示文件的一行。
我想知道 'ABCD'(文件 A)在 DB(文件 B)中出现了多少次。同样,我想知道文件 A 中针对 DB 的每一行。我需要一个可以简化我的工作的自动化命令,因为我在文件 A 中有大量数据,我想在许多数据库中搜索它。我只是为了理解而将字符加粗。
ABCD
EFG
HIJKL
MNO
PQRSTU
Run Code Online (Sandbox Code Playgroud)
XYZ ABCD FORNTUFPSRWSABCFYWSZCFTHBFORTYBJNF ABCD D EFG ACVRT EFG PQRMNOOPQ EFG ZXXXYY
ABCD 2
EFG 3
HIJKL 4567
MNO 0
PQRSTU 7652
Run Code Online (Sandbox Code Playgroud) command-line ×10
text-processing ×10
sed ×2
awk ×1
bash ×1
json ×1
perl ×1
python ×1
r ×1
scripts ×1