我在抓取文本文件中的几行代码时遇到困难。例如,假设我在一个文件中有以下文本:
A I have a cat
B I have a dog
C I have a mouse
X I have a monkey
B I have a rat
T I have a cat
C I have a deer
X I have a turkey
我正在寻找所有包含"cat“字的行,如果这个句子的第一个字母是"A”,我希望得到接下来的几行(包括与模式“cat”相匹配的行),直到我遇到"X“作为一行的第一个字母为止。
因此,例如,上面的文本文件应该打印出来:
A I have a ca
我有几行文件,我想合并所有行与分隔符,并删除最后一行。
它不能与perl一起工作。但是使用sed。您能帮助perl实现这一点吗?
cat a
a
b
c
d
cat a |perl -lane 'printf("%s|",$_)' |perl -lane 's/|$//;print'
a|b|c|d|
cat a |perl -lane 'printf("%s|",$_)' |sed 's/|$//'
a|b|c|d
我有一个简单的文本文件,名为samples.log。在这个文件中我有几行。假设我一共有10行。我的目的是将文件的前5行替换为同一文件的最后一行。例如:
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
line 9
line 10
变成:
line 6
line 7
line 8
line 9
line 10
换句话说,我只是想删除文件的前5行,然后我想移到最后5行,我正在Linux上工作。做这件事最简单的方法是什么?有命令吗?我正在编写一个C程序,但我认为最好在程序中执行linux命令,而不是在C中执行这个操作,我认为这是相当困难
我有两个文件: file1和file2。File1有很多行/行和列。File2只有一列,有几行/几行。在file1中可以找到file2中的所有字符串。我想创建一个新文件(file3),
例如,
File1:
Sally ate 083 popcorn
Rick has 241 cars
John won 505 dollars
Bruce knows 121 people
File2:
083
121
所需的file3:
Sally ate 083 popcorn
Bruce knows 121 people
输入文件包含以下几行:
a
b
c
我希望输出为(n倍):
a
b
c
a
b
c
我试过下面的命令,但它不能维持命令
while read line; do for i in {1..4}; do echo "$line"; done; done < file
但是输出结果是
a
a
b
b
c
c
我试图对一个文本文件做一个摘要,但是有一个问题我无法处理。我有几行,我希望从同一类别中得到连续行中值的平均值。当类别发生变化时,我希望在结果摘要中添加一个新行。
文本文件看起来如下(text.txt):
1 1 a
2 2 a
3 3 a
4 4 b
5 5 b
6 6 a
7 7 a
8 8 b
好的,我想要这个(计数器,类别,平均1,平均2):
1 a 2.0 2.0
1 b 4.5 4.5
2 a 6.5 6.5
2 b 8.0 8.0
到目前为止,这只是概括了所有的事情:
cat test.txt | awk '{avg1+=$1;avg2+=$2;cat=$3;count++
假设我有一个脚本,它有几行以foobar开头的代码
我希望将所有行移动到文档的末尾,同时保持它们的顺序
例如,从:
# There's a Polar Bear
# In our Frigidaire--
foobar['brangelina'] <- 2
# He likes it 'cause it's cold in there.
# With his seat in the meat
foobar['billybob'] <- 1
# And his face in the fish
至
# There's a
我有几行file:
x 1
y 2
z 3 t
我需要将每一行作为参数传递给某个程序:
$ program "x 1" "y 2" "z 3 t"
我知道如何使用两个命令来完成这个任务:
$ readarray -t a < file
$ program "${a[@]}"
如何使用one命令执行此操作?就像这样:
$ program ??? file ???