标签: text-processing

如何从Unix上的文本文件中提取预定范围的行?

我有一个~23000行的SQL转储包含几个数据库的数据.我需要提取此文件的某个部分(即单个数据库的数据)并将其放在一个新文件中.我知道我想要的数据的起始行和结束行号.

有没有人知道一个Unix命令(或一系列命令)从第16224和16482行之间的文件中提取所有行,然后将它们重定向到一个新文件?

unix command-line text-processing sed

505
推荐指数
11
解决办法
46万
查看次数

在每行的开头添加前缀字符串

我有一个文件如下:

line1
line2
line3
Run Code Online (Sandbox Code Playgroud)

我想得到:

prefixline1
prefixline2
prefixline3
Run Code Online (Sandbox Code Playgroud)

我可以写一个Ruby脚本,但如果我不需要它会更好.

prefix将包含/./opt/workdir/例如,这是一条道路.

linux scripting text-processing

310
推荐指数
9
解决办法
33万
查看次数

如何在Vim中将所有文本转换为小写

如何将Vim中的所有文本转换为小写?它甚至可能吗?

vim text-processing

199
推荐指数
9
解决办法
12万
查看次数

如何使用sed只替换文件中的第一个匹配项?

我想在任何现有的#includes之前用额外的include指令更新大量的C++源文件.对于这种任务,我通常使用带有sed的小bash脚本来重写文件.

如何sed更换文件中第一次出现的字符串而不是替换每次出现?

如果我使用

sed s/#include/#include "newfile.h"\n#include/
Run Code Online (Sandbox Code Playgroud)

它取代了所有#includes.

也欢迎提供相同建议的替代建议.

command-line text-processing sed

195
推荐指数
11
解决办法
32万
查看次数

AWK多个分隔符

我有一个包含以下行的文件:

/logs/tc0001/tomcat/tomcat7.1/conf/catalina.properties:app.env.server.name = demo.example.com
/logs/tc0001/tomcat/tomcat7.2/conf/catalina.properties:app.env.server.name = quest.example.com
/logs/tc0001/tomcat/tomcat7.5/conf/catalina.properties:app.env.server.name = www.example.com
Run Code Online (Sandbox Code Playgroud)

在上面的输出中,我想提取3个字段(第2,4和最后一个*.example.com).我得到以下输出:

cat file | awk -F'/' '{print $3 "\t" $5}'
tc0001   tomcat7.1
tc0001   tomcat7.2
tc0001   tomcat7.5
Run Code Online (Sandbox Code Playgroud)

如何提取具有以下域名的最后一个字段'='?我如何使用multiple delimiter提取字段?

awk command-line text-processing

185
推荐指数
5
解决办法
34万
查看次数

从bash中的文件中选择随机行

在bash脚本中我想从输入文件中挑出N个随机行并输出到另一个文件.如何才能做到这一点?

random bash shell text-processing

181
推荐指数
4
解决办法
11万
查看次数

如何在文本文件中替换$ {}占位符?

我想将"模板"文件的输出传递给MySQL,该文件包含${dbName}散布的变量.什么是命令行实用程序来替换这些实例并将输出转储到标准输出?

bash command-line text-processing templating

137
推荐指数
11
解决办法
13万
查看次数

还有什么理由去学习AWK吗?

我不断学习新工具,甚至是老式工具,因为我喜欢使用正确的解决方案解决问题.

不过,我想知道是否还有任何理由去学习其中的一些.awk例如是对我有意思,但对于简单的文本处理,我可以使用grep,cut,sed等而复杂的,我会去为Python.

现在我并不是说它不是一个强大而方便的工具.但是,由于学习新工具需要时间和精力,值得吗?

awk text-processing

103
推荐指数
11
解决办法
3万
查看次数

如何在Java中向现有文件添加新行文本?

我想在不删除该文件的当前信息的情况下将新行附加到现有文件.简而言之,这是我使用当前时间的方法:

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.Writer;

Writer output;
output = new BufferedWriter(new FileWriter(my_file_name));  //clears file every time
output.append("New Line!");
output.close();
Run Code Online (Sandbox Code Playgroud)

上述行的问题只是它们删除了我现有文件的所有内容,然后添加了新的行文本.

我想在文件内容的末尾添加一些文本而不删除或替换任何内容.

java file-io text-processing

80
推荐指数
6
解决办法
24万
查看次数

如何获取Bash变量中的第一个字母?

我有一个Bash变量,$word有时候是一个单词或句子,例如:

word="tiger"
Run Code Online (Sandbox Code Playgroud)

要么:

word="This is a sentence."
Run Code Online (Sandbox Code Playgroud)

如何创建一个新的Bash变量,该变量仅等于变量中的第一个字母?例如,以上将是:

echo $firstletter
t
Run Code Online (Sandbox Code Playgroud)

要么:

echo $firstletter
T
Run Code Online (Sandbox Code Playgroud)

bash text-processing variable-expansion

75
推荐指数
5
解决办法
6万
查看次数