我知道从文件中删除所有条目的三种方法。
他们是
>filenametouch filename1filename < /dev/null在这三个中,我滥用>filename最多,因为它需要最少的击键次数。
但是,我想知道就大日志文件和小文件而言,这三个中哪个最有效(如果有更有效的方法)。
另外,这三个代码是如何操作和删除内容的?
1编辑:正如在这个答案中所讨论的,这实际上并没有清除文件!
我正在尝试打印匹配的行和匹配行的第 4 行(包含我正在搜索的表达式的行)。
我一直在使用以下代码:
sed -n 's/^[ \t]*//; /img class=\"devil_icon/,4p' input.txt
但这只会打印匹配的行。
这仅打印第 4 行。
awk 'c&&!--c;/img class=\"devil_icon/{c=4}' input.txt
我只需要打印匹配的行和第 4 行。
我正在尝试使用 shell 脚本解析 HTML 文件。
我需要捕捉 4 种不同的正则表达式:name=, age=, class=, marks=.
使用
grep "name=\|age=\|class=\|marks=" student.txt
Run Code Online (Sandbox Code Playgroud)
我能够获得所需的行,但除了这些匹配的行外,我还需要打印包含分数的每个匹配项的第二行。
参考问题:Print Matching line and nth line from the matching line。
我将代码修改为:
awk '/name=\|age=\|class=\|marks=/{nr[NR]; nr[NR+2]}; NR in nr' student.txt
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用。如何在同一个awk命令中搜索多个正则表达式?
我错误地在终端中执行了以下命令:
tail -f /logs/applications/logs*
我得到以下输出:
tail: file shrunk!
Error 0
Run Code Online (Sandbox Code Playgroud)
我不确定到底发生了什么。我已经有一段时间没有跟踪目录中的文件数量了。有人可以解释一下到底发生了什么,我是否丢失了任何文件。
编辑:
不知道是不是巧合,我执行完代码后,数了一下目录下的文件数,竟然是10个!
第一次 10 号让我变得偏执...