我试图弄清楚每个字在使用linux的文件中发生了多少次。
通过使用下面的代码,我已经将文件中的每个单词放到了一个新行中。
sed -i 's/ /\n/g' books2
我现在正试图用空格替换单词的开头和结尾,因为有些单词包含标点符号。我目前正在使用下面的代码来完成这个任务,但是它似乎不起作用。一旦我有了这个命令,我将能够运行一个命令,它将对所有单词进行计数,并返回所有单词的计数列表。有人能纠正我如何删除标点符号吗?
sed -i 's/\([^[:alpha:]]\)$//' books2 #this is my attempt to remove the
我正在学习编程课程,我试图做一个实践活动,但我被困住了。我有一个包含以下列表的文件:
Monday day
Tuesday day
Easter holiday
Monday day
christmas holiday
Tuesday day
Friday day
Thursday day
thanksgiving holiday
我想做的是
把这份名单整理一下,
打印只包含不重复的名称的新列表,
计算每个单词出现在列表中的次数,以及
在计数器和单词之间插入一个选项卡。
这将是我想要的输出
我有一个文件夹中的.txt文件列表,如果其中包含字母字符,我想删除最后50行(整行)。到目前为止,我有以下几点:
for i in *.txt
do max_line=$(cat ${i%.txt}.txt | wc -l)
let min_line=max_line-50
#
sed -e "${min_line},${max_line}d" %{i%.txt}.txt
done
#
我有一组包含键值对或转换字符串的30+文件,格式如下:
key=some text
有时我想从这些文件中删除一些键,而我所做的就是打开其中一个,找到包含我要删除的键的行(例如,第310行),然后手动从其他文件中删除这一行。这些文件中的键按字母顺序排序,因此,如果密钥出现在文件的第310行,那么它就出现在每一个其他文件的第310行中。
从一堆文件中删除一行(例如,行310)的简单方法是什么?
我在抓取文本文件中的几行代码时遇到困难。例如,假设我在一个文件中有以下文本:
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
我有一个名为"dictionary.txt“的文件,其中包含所有可能的单词,例如:
a
aardvark
act
anvil
ate
...
我如何搜索这个,只有打印一行包含来自有限列表的字母,例如,如果列表中包含字母"c“、"a”和"t",搜索将显示以下单词:
a
act
cat
如果搜索字母"e“、"a”和"t“,则只能从”dictionary.txt“中找到这些单词:
a
ate
eat
tea
我所管理的唯一解决方案是:
创建所有可能的字母列表。
从这个列表中删除搜索的信件,留下一个我不想搜索的信件列表。
使用
我试图从不想要的行中清除大量日志文件,并且只保留那些包含一些字符串的日志文件。例如:
sunday morning NOPE again
may it be DENSE in such a place
nothing here really
在这种情况下,只留下包含无或密集的线条。
我试过从示例中使用sed,但是没有为字符串列表添加一个或一个列表,例如:
sed -ni.bak '/\NOPE/p' file
我需要将文件中每一行的第一个字母改为大写字母。
the bear ate the fish.
the river was too fast.
将成为:
The bear ate the fish.
The river was too fast.
文件包含一些特殊字母: a、a、á、à、ǎ,ā、b、c、d、e、e、é、è、ě,ē、f、g、h、i、μ、ǐ,ī、j、k、l、m、n、o、w、ǒ,ō、p、q、r、s、t、u、u、ú、a、ǔ、ü、ǘ,ǜ,ǚ,ǖ,ū、v、w、x、y、和z.这些字母的大写形式是: A、A、A、are、Ǎ、A、B、C、D、E、Ě,Ē、F、G、H、I、G、Ǐ,Ī、J、K、L、M、
我试图使用SED创建一系列目录,这些目录都包含一个同名的文件,但是每个目录中的每个文件都有一行不同的内容。
for i in $( cat ~/SCRIPTS/AALIST.txt); do
mkdir ~/jan10/25
sed -e "s/HAT/${i}/" <~/SCRIPTS/HAT25.inp > ~/jan10/25/25$i/mat.inp
AALIST.txt是一个简单的文件,有效地..。
A
B
C
D
E
虽然HAT25.inp有很多行文本,然后在第25行上使用" HAT“一词,但是这个帽子应该被替换为A、B、C等。在目录25
我有一个有几行不同行的文件。我正在寻找包含(或多或少)如下模式的行:
\[.*<.*>.*\]
换句话说,我需要在[]之间有<something>的行。例如:
Line with [ <matching>|<pattern>]
A line <that> does[not]<match>[]
But [this[<should>]be matched] too
[match [me] <buddy>]
<>之间唯一允许的字符是字母数字字符和下划线。
我尝试过上面的regexp和它的懒惰版
给定的文件如下:
first line
second line DELETE ME
- third line
- fourth line
fifth line
sixth line DELETE ME
seventh line
- eighth line
除了模式a (DELETE ME)和模式b ([[:blank:]]*-)之外,我只想保留
first line
fifth line
seventh line
- eighth line
换句话说,我想删除包含模式a的每一行,以及直接从模式b开始的所有行。
到目前为止,我只满足了一些(但不是全部)需求:
sed '/
假设我有以下文本文件:
a b c d 1 2 3
e f g h 1 2 3
i j k l 1 2 3
m n o p 1 2 3
在包含字母(e) 和的行中,如何将包含字母(k)的行中的‘12 3’替换为'4 5 6‘?
注:包含字母(k)的行可能出现在文件中的任何位置,这些行不按任何顺序排列。
我的方法是
移除我想要替换的行,在之前找到行,在之后找到行,在<code>E 212</code>之后,在<code>H 213</code><><code>H 114</code>后,将输出追加到<
我有两个文件,fileA和fileB。
fileA包含:
71
32
23
10
...
fileB包含:
ok
no
no
ok
...
我想要做的是,如果fileA中的同一行与'no‘匹配,则删除fileB中的行。因此,生成的fileA如下所示:
71
10
...
任何命令、bash脚本或vim都可以做到这一点?
仅使用sed,我试图打印最后一个单词包含字母'd‘的文件行。内容可能类似于:
Honey, I am leaving for grocery shopping. Do you want anything?
Are you well? You look exhausted.
然后只打印第二行。
我试过sed -En '/\s*([\S]+)\b[a-zA-Z]*d[a-zA-Z]*\b\.$/p' lines.txt
在阅读了之后,我的正则表达式的逻辑是,我匹配最后一个单词,然后检查该单词中的任何字符组合,断言某个'd‘字符存在,然后是随后的任何字符组合。
我哪里
我正在格式化一个语言语料库,以便在短语生成模型中输入文本。现在,语料库本质上是一个包含相关行的长文本文件,如下所示:
*EXP: I didn't understand what you said .
*CHI: I know [!] &=laugh (.) .
我已经可以使用grep来获取所有以“*”开头的行。我想要做的是打印出所有那些删除了5个字符+制表符标题的行(删除*EXP:或*CHI:或其他任何字符),并删除所有非字母字符,如括号、括号和句号。唯一的例外是撇号-为了这个模型,我需要将撇号转换为'@‘符号。此外,我希望去掉以“&”符号开头的标记,