我想从文件中提取不包含特定模式的所有行。
pattern="tmp/[...]/include/linux/*.h"
file contains:
17937;/home/[...]/tmp/[...]/include/linux/header.h;484;16;[Other text here]
37417;/home/[...]/tmp/[...]/src/file.cpp;1851;41;[Other text here]
17945;/home/[...]/tmp/[...]/include/linux/*/header.h;484;16;[Other text her
使用regexp字符串,如何删除包含匹配的第一行之前的所有行?例如,我如何才能改变这一点:
lost
load
linux
loan
linux
这方面:
linux
loan
linux
我试过:
echo "lost
load
linux
loan
linux" | sed -e 's/.*^li.*$//g'
但是它返回这个,而不是改变任何东西:
lost
load
linux
loan
linux
我想让它工作,这样当没有匹配的时候,它就不会输出任何东西。
如何使用sed用文本替换空行?我尝试了一些早些时候发布的技巧,但它不起作用。有人能帮我吗?
示例文件内容-
Linux is an os.
Linux is opensource
Linux has various flavors like fedora,centos etc.
我想用像hello这样的文字来代替这些空白行。
我有一个格鲁选项文件,我想通过脚本修改。我想添加额外的引导加载程序选项。
该文件可能会随着时间的推移而改变,因此我希望通过在映像附带的任何引导加载程序选项中添加一些适应未来版本的内容。
例如,引导加载程序文件包含以下内容:
# Set the recordfail timeout
GRUB_RECORDFAIL_TIMEOUT=0
# Do not wait on grub prompt
GRUB_TIMEOUT=0
# Set the default commandline
GRUB_CMDLINE_LINUX_DEFAULT="console=tty1 console=ttyS
我试图区分Linux/Unix行结束字符\n和\r\n行的Windows。我似乎找不到一个独特的正则字符串来区分这两种情况。我的代码是
import regex
winpattern = regex.compile("[(?m)[\r][\n]$",regex.DEBUG|regex.MULTILINE)
linuxpattern = regex.compile("^*.[^\r][\n]$", regex.DEBUG)
for i, line in enumerate(open('file8.py')):
for match i
在我的文件中,我正在搜索一个从第3行开始到第4行结束的模式,如何在linux中搜索这种模式 具有文本的cat myfile.txt you know who is super hero
where they are
super hero are born by birth,
they are good for us. grep -irls的超级英雄是天生的,他们对我们有好处*
eag = 'linux'
rpat = re.compile("^\s*%s\s*=\s*('.*\'')" % eag)
试图在文本文件中的一行中获取r'^LIN',linux = r'^LIN',
lines = [line.strip() for line in open (myfile, 'r')]
for line in lines:
if re.match(rpat, line)
matched = re.match(rpat,line)
当我使用grep查找我需要的文本时,它将显示包含与给定模式匹配的行。
例如,
# grep -r ".*Linux" *
path0/output.txt:I hope you enjoyed working on Linux.
path1/output1.txt:Welcome to Linux.
path2/output2.txt:I hope you will have fun with Linux.
然后,我想编辑文件path2/output2.txt,因此,我输入了vim path2/output2.txt。
但是,我不认为这是一个有效的方法。
如何在grep之后复制
我通过Linux终端创建了一个文件,并将其命名为people,该文件的内容如下.
Mr. Smith
Mrs. Jenn Bewlite
Ms Carmichael
Dr Ivan James
Mrs Holly Alva Beswol
Mrs James Sheepwool
Mr. Hitchcock
如何显示行后面有字母H的行,后面是字母o。
我试过使用以下命令,但没有起作用。也许我有个打字错误。
$ egrep -w 'H|o' /home/liveuser/people
$ grep "H|o" people
我在linux (redhat)文件系统上有一堆php文件,大多数文件看起来还不错,因为它们使用抽象数据库交互的函数,但是我发现有些地方使用内联查询而不是抽象层函数。
这些查询似乎被设计为与mysql一起运行,但我们运行的是Oracle,因此它们在检查空值时会产生故障,例如:
select name from user where name !=''
在Oracle中,此查询永远不会返回任何行,我需要将其更改为:
select name from user where name !=' '
我已经能够在我浏览的文件中修复此问题,现在我想主动查找其他文件中出现此
在Linux上使用SQLite 3将文件中损坏的行导入到表中时,有什么方法可以忽略这些行吗?文件大小为13 in,文件中有大约50行损坏的行,因此手动删除这些行并不容易。任何建议都将不胜感激。
sqlite> .separator "|"
sqlite> .import myFile.dat myTable
myFile.dat line 29046575: expected 18 columns of data but found 3