我有一个包含20行的.txt文件,并且希望得到每一行的最后两个字母。它等于,AA,,在每一行,然后打印好。如果不是的话,就印坏了。
line11111111111111111 AA
line22222222222222222 AA
line33333333333333333 AA
.....................
line20202020202020202 AA
我是GOOD。
===========================
line11111111111111111 AB
line22222222222222222 AC
line33333333333333333 WD
我有一个脚本,它返回几行输出,我试图打印最后一行的最后两个单词(不管输出中有多少行)。
$ ./test.sh
service is running..
check are getting done
status is now open..
the test is passed
我试着按下面的方式运行,但它打印每一行的最后一个单词。
$ ./test.sh | awk '{ print $NF }'
running..
done
open..
passed
如何使用awk或sed打印最后两个单词“传递”
我不明白以下的行为:
这是一个文本文件:
example.txt
12345 4321 hello hello this is a test blobb
14324 2131 another test , incoming ! blubb
52341 1231 last test now shutting down bla
...
它由x行文本组成,每列4列由制表符分隔.我只需要前三个,所以我使用awk (这是第一次):
awk '{FS="\t"; OFS="\t"; print $1,$2,$3}' <
我在抓取文本文件中的几行代码时遇到困难。例如,假设我在一个文件中有以下文本:
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
我有一个包含几行的文本文件。每一行都有用逗号分隔的单词。行中的字数不同。我想在awk命令的帮助下,使每一行都有相同的列数。例如,如果文本文件如下所示:
word1, text, help, test
number, begin
last, line, line
我希望输出如下所示,其中每一行在列中具有相同的大小,并具有额外的空字:
word1, text, help, test
number, begin, null, null
last, line, line, null
我尝试了以下代码:
awk '{print $0,Null}' file.txt
做这件事有点问题。输出必须采用以下格式:在每一行上,首先打印一个单词,然后是冒号“:”,然后是空格,然后是单词出现的行号列表(用逗号分隔)。如果一个单词多次出现在一行中,它应该只报告该行的一次。
命令行: index.awk test1.txt > new.output.txt
我的代码(当前):
#!/bin/awk -f
Begin {lineCount=1} # start line count at 1
{
for (i = 1; i <= NF; i++) # loop thr
我希望使用sed或其他解决方案修改文本文件中的每一行。
含input.txt
line 1
line 2
line 3
...
output.txt应该添加两个字符串
<before> line 1 and <after each line>
<before> line 2 and <after each line>
<before> line 3 and <after each line>
...
我能用sed还是别的什么吗?
我正在尝试将第一行文本(日期)附加到文本文件其余部分中每一行的开头。有人能帮忙吗?我使用bash将数据提取到显示的文本文件中。(对此完全陌生)
当前文本文件:
Sun Apr 7 14:16:30
Host: 192.168.1.3; Status: Up
Host: 192.168.1.5; Status: Up
Host: 192.168.1.6; Status: Up
我希望文本文件能读到:
Date (from first line); Host: 192.168.1.3; Status: Up
Date (from first line); Host: 192.168.1.5;
我有一个txt文件,我想使用sed、awk、grep或任何组合来删除文件中每一行的最后一个字符串。
我想我需要一些像sed '$s/‘这样的东西。但无法完全弄清楚。谢谢。
示例:
fab foo bar
fab foo fab
fab foo foo
期望输出
fab foo
fab foo
fab foo
注意,最后一个字符串在每一行中都是不同的。
我昨天开始学习字符串,想通过用文本文件中的文本填充它来操作它。然而,在填充它时,cstring数组只打印出文本文件的最后一个单词。我是一个完全的初学者,所以我希望你能保持对初学者的友好。我想要从文件中打印的行是:"Hello World from UAE“-第一行”我喜欢编程“-第二行现在我确实环顾了一下,最终找到了一种方法,那就是使用std::skipary或类似的东西,但它没有像我想象的那样打印它,它逐个字母打印,并跳过每一行。下面是我的代码:
#include <fstream>
#include <iostream>
#include <cstri
我正在寻找一种方法,以搜索第9次出现的模式和打印k行后的模式。我想在这种情况下awk会比grep工作得更好,但我想不出正确的方法.
假设我有以下文本文件:
Draft
blablablabla
tralalalalala
Draft
blablablabla
tralalalalala
Draft
important line 1
important line 2
Draft
blablablabla
tralalalalala
在本例中,n=3和k=2,我想打印第3次出现的模式“草稿”之后的2行。在我的具体情况下,n和k可能有所不同。
这是
我有以下文本文件:
文件:Test.txt
Number of Cars:
10
Number of Bikes:
20
Number of Cycles:
10
注意事项:现在我想从文件中得到下一行的自行车数量,也就是20。
我的尝试:1
sed -n '/Number of Bikes:/{N;p;}' Test.txt
输出:
Number of Bikes:
20
我的尝试:2
awk '/Number of Bikes/{_=2}_&&_--' Test.txt
输出:
Number of Bikes
我有很多文本文件,我想在linux中创建一个bash脚本,在每一行文件中打印文件名。例如,我有lenovo.txt文件,我希望文件中的每一行都以lenovo.txt开头。
我试着为这个做一个" for“,但没有起作用。
for i in *.txt
do
awk '{print '$i' $0}' /var/SambaShare/$i > /var/SambaShare/new_$i
done
谢谢!