如果应用程序在 Windows 中崩溃,我们可以检查管理工具中的事件查看器以查看崩溃的原因。有时它有有用的信息,而其他人没有,但这是一个开始。
在 linux 中,如果一个应用程序(任何)崩溃了,人们如何开始跟踪发生了什么?
是否有一些中央日志或类似的东西?
例如
cat sed_data.txt | sed 's/\b[0-9]\{3\}\b/NUMBER/g'
,我必须转义字符以形成正则表达式。在这种情况下,我不得不转义大括号,以便多次解释。
为什么?我期待除非转义,否则一切都是正则表达式。即相反。
在 bash 脚本中,我想执行以下操作:
script.sh < some_file
Run Code Online (Sandbox Code Playgroud)
这some_file是一个有 1 行的文件,我想将它作为参数传递给我的 bash script.sh。我怎样才能做到这一点?
我有一个这样的文件:
AAAA
BBBB
CCCC
DDDD
etc
Run Code Online (Sandbox Code Playgroud)
在单独的行中的单词。我想使用tr.
所以我尝试了以下方法:
1)在每个单词的开头添加引号,即 'AAAA
tr '^\w$' '\'\w$' <file.txt 不起作用 tr '^\w$' ''\w$' <file.txt 不起作用 以上两者都使命令行卡住。
2)要在最后添加引号,我试过:
tr '\n' ''\n' <file.txt 但这不起作用,命令行卡住了。
为什么这些正则表达式不适用tr?
文件的“就地”修改是什么意思,例如通过sed -i或perl -i意味着什么?
我的问题是关于这种就地修改是如何完成的。是复制的文件是在副本中进行修改然后替换原来的吗?或者原始文件是否以某种方式被修改到位?
有什么区别:
grep "string" . -r --include *.pl
和
grep "string" . -r --include "*.pl"
后者包括子目录中的文件,而前者不包括。为什么?
我想问一下 cron 工作。好的,我们将脚本放在 crontab 中,然后 cron 守护程序执行它们。
现在,如果我理解这一点,每分钟,cron 都会检查每个用户的 crontab 并执行配置的脚本。但这实际上是如何完成的?它是否分叉子进程等?
它不能按顺序执行任务,因为时间会丢失(例如,由于等待长时间运行的脚本完成)。那么这实际上是如何实施的。
只是为了提供帮助,我不是在寻找低级代码。高级描述(可能是算法?)或在大多数发行版中如何实现对我来说就足够了。
我正在使用 sed。据我所知,我使用的是正确的正则表达式,但 sed 没有做任何事情。原来我使用的是\s+哪个 sed 无法理解,当我切换到[ ]+它时,它起作用了。
所以总而言之,我做了一个正则表达式,为了让它工作,我必须逃避几乎所有的事情并删除\sfor 空格。似乎有一种模式可以避免所有这些,-r所以我想问:
-rsed 的默认模式?为什么我要费那么多心思来逃避一切? man说有选项--posix并且“应该支持POSIX.2 BRE”这是指什么?NFA/DFA 模式?我正在做 grep 和 sed 并且我得到了我感兴趣的文件的 2 行。如何在以换行符结尾的单行中获取这些行?
现在我得到:
pattern1
pattern2
Run Code Online (Sandbox Code Playgroud)
我想得到 pattern1 pattern2 \n
有没有办法“查询”crontab 以查找在任意日期/时间或特定时间范围内运行的 cron 作业?
例如,确定哪个将在今天 14:00 和 16:00 之间的某个时间运行,将在下周六 10:00 运行,还是每周日运行?
有很多工作安排,所以手动阅读所有的 crontab 并不是一个真正的选择。