输入:
START
OS:: UNIX
Release: xxx
Version: xxx
END
Description about UNIX
<Multiline>
START
OS:: LINUX
Release: xxx
Version: xxx
END
Description about LINUX
<Multiline>
START
OS:: Windows
Release: xxx
Version: xxx
END
Description about Windows
<Multiline>
在这里,我试图获得所有的信息之间的开始和结
样本数据
wolf@linux:~$ awk {print} file.txt
a b
b c
c d
wolf@linux:~$
这很容易做到,因为数据非常小。
wolf@linux:~$ awk 'BEGIN {print " " 1 " " 2} {print NR,$0}' file.txt
1 2
1 a b
2 b c
3 c d
wolf@linux:~$
对于更大的数据有类似的解决方案吗?我正在考虑在BEGIN {print " " 1 " " 2}部件上使用类似于D3的东西,而不是手
我试图在vmstat结果中获得'id‘的值。但是,我发现“id”列在linux/AIX/HP等平台之间的位置是不同的。
## Linux
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 35268 117568 158244 1849104 0 0 3 11321 5
我在一个软件中进行了几次分析,输出文件类似于以下内容:
ASReml 4.1 [28 Dec 2014] Analisys Build mx [05 Oct 2018] 64 bit Linux (x64)
31 Jan 2020 07:26:33.206 1024 Mbyte
*****************************************************************
* Contact support@asreml.co.uk for licensing and support *
*********
我在标签分隔的文本文件中有一个类似于数据的矩阵。例如:
a b c d
a 0.1 0.5 0.3 0.0
b 0.9 0.2 0.4 0.7
c 0.2 0.0 0.6 0.5
d 0.0 0.5 0.3 0.1
我想要这个矩阵数据在tsv文件中,例如第一列是行索引,第二列是列索引,第三列是值。例如,前4行如下:
a a 0.1
a b 0.5
a c 0.3
a d 0.0
我的档案很大。它大约是5000×5000矩阵;因此开始输入文件有大约5000行和5000列。我
我的文本看起来像这样:
some text..............................12
some more text......................65
even sometext...................................68
在其他领域,它是一个TOC。我希望这些行的长度相等,比如32个字节,用.填充。在Linux中如何做到这一点?到目前为止,我已经用sed做了所有的事情,但我不确定这一点
编辑:我可能应该补充说,涉及Linux命令行上任何可用的工具/语言的解决方案都是很好的
我想用linux命令在文本文件中找到字符串的最后一次出现。例如
1 a 1
2 a 2
3 a 3
1 b 1
2 b 2
3 b 3
1 c 1
2 c 2
3 c 3
在这样的文本文件中,我想找出b最后一次出现的行号,即6。
awk '/ b / {print NR;exit}' textFile.txt
但我不知道最后一次该怎么做。
我有一个demo.html文件,其内容如下:
<html>
<header><header>
<body><table>
some content here
</table>
<body>
</html>
我希望使用Linux命令对subString进行提取,并将其内容提取为:
<table>
some content here
</table>
对于此要求,哪个命令更简单?
发布
我需要在文件中的两个模式之间选择所有的模式,但是使用变量和*作为通配符。
例如(类似的事情)。
myscript var1 var2 var3
脚本。
#!/bin/bash
cat $1 | sed -n "/*$2*$3/,/## end of string ##/p"
它没有像我预期的那样工作,因为*并不像anything那样工作。*应该是变量之间的任意变量。例如,文件示例($1)就是这样的。
## First line, first variable is var2, and second variable is var3. Information text.
S
我有一个像这样的文件
line one
line two
line three
line four
我希望它看起来像这样(我希望第2行和第3行合并成一个)
line one
line two line three
line four
我尝试了以下几点:根据我的研究,我应该做我想做的事情:
$ sed '2s/\n/ /' test.txt > test2.txt
然而,test2.txt看起来是这样的
line one
line two
line three
line four
我在Solaris上看到了一些与Linux不同的引用。这是我服务器的详细信息
$ uname