我有一个~23000行的SQL转储包含几个数据库的数据.我需要提取此文件的某个部分(即单个数据库的数据)并将其放在一个新文件中.我知道我想要的数据的起始行和结束行号.
有没有人知道一个Unix命令(或一系列命令)从第16224和16482行之间的文件中提取所有行,然后将它们重定向到一个新文件?
我有一个文件如下:
line1
line2
line3
Run Code Online (Sandbox Code Playgroud)
我想得到:
prefixline1
prefixline2
prefixline3
Run Code Online (Sandbox Code Playgroud)
我可以写一个Ruby脚本,但如果我不需要它会更好.
prefix
将包含/
./opt/workdir/
例如,这是一条道路.
我想在任何现有的#includes之前用额外的include指令更新大量的C++源文件.对于这种任务,我通常使用带有sed的小bash脚本来重写文件.
如何sed
更换文件中第一次出现的字符串而不是替换每次出现?
如果我使用
sed s/#include/#include "newfile.h"\n#include/
Run Code Online (Sandbox Code Playgroud)
它取代了所有#includes.
也欢迎提供相同建议的替代建议.
我有一个包含以下行的文件:
/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
提取字段?
在bash脚本中我想从输入文件中挑出N个随机行并输出到另一个文件.如何才能做到这一点?
我想将"模板"文件的输出传递给MySQL,该文件包含${dbName}
散布的变量.什么是命令行实用程序来替换这些实例并将输出转储到标准输出?
我不断学习新工具,甚至是老式工具,因为我喜欢使用正确的解决方案解决问题.
不过,我想知道是否还有任何理由去学习其中的一些.awk
例如是对我有意思,但对于简单的文本处理,我可以使用grep
,cut
,sed
等而复杂的,我会去为Python.
现在我并不是说它不是一个强大而方便的工具.但是,由于学习新工具需要时间和精力,值得吗?
我想在不删除该文件的当前信息的情况下将新行附加到现有文件.简而言之,这是我使用当前时间的方法:
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)
上述行的问题只是它们删除了我现有文件的所有内容,然后添加了新的行文本.
我想在文件内容的末尾添加一些文本而不删除或替换任何内容.
我有一个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) text-processing ×10
command-line ×4
bash ×3
awk ×2
sed ×2
file-io ×1
java ×1
linux ×1
random ×1
scripting ×1
shell ×1
templating ×1
unix ×1
vim ×1