从这个问题复制并使用 unix 替换列
我试图构建一个仅适用于该文件的解决方案:
20070101 10.2317 79.1638 6.0 26.7 20.9 0.8 14.0 98.6
20070102 10.2317 79.1638 5.6 26.5 20.8 1.9 13.6 98.0
20070103 10.2317 79.1638 7.5 27.7 20.8 0.1 15.8 96.4
20070104 10.2317 79.1638 8.1 26.0 19.6 0.0 15.5 94.1
Run Code Online (Sandbox Code Playgroud)
并得到输出:
01/01/2007 10.2317 79.1638 6.0 26.7 20.9 0.8 14.0 98.6
02/01/2007 10.2317 79.1638 5.6 26.5 20.8 1.9 13.6 98.0
03/01/2007 10.2317 79.1638 7.5 27.7 20.8 0.1 15.8 96.4
04/01/2007 10.2317 79.1638 8.1 26.0 19.6 0.0 15.5 94.1
Run Code Online (Sandbox Code Playgroud)
不涉及其他文件。
所以我想用转换后的日期替换第一列。 …
我是孟加拉国人。我注意到这些的发音因人而异(甚至老师)。维基百科/grep说“grep”为“ g/re/p ”,而 grub 的我没有找到。
我有一些运行 Ubuntu 18.04.5 LTS 的服务器
在 sudo 包的上次更新中,我可以看到它sudo:amd64 1.8.21p2-3ubuntu1.4
已安装在 26/01/2021(同一天,Sudo 漏洞中的基于堆的缓冲区溢出漏洞,CVE-2021-3156 发布)
根据此列表,sudo 版本 1.8.21p2 受此漏洞影响。
但是,如果我运行 test 命令来检查系统是否易受攻击,我会得到:
# sudoedit -s /
usage: sudoedit [-AknS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p prompt] [-T timeout] [-u user] file ...
Run Code Online (Sandbox Code Playgroud)
这是系统不受此漏洞影响时的输出。
我的系统是否存在漏洞?版本列表和命令输出之间是否有任何不一致?
我需要使用awk
来打印包含多个模式的列。我需要打印第 2 列以及分别包含“config”和“service”的所有列。
文件内容:
build 345 java groovy /test:fail.txt /config:launcher.mxres /nickname:prod /service:session
auto 4986 java -xmx512 -d64 /test:pass.txt /nickname:deal /service:engine /config:launcher5.mxres
build 912 binary.exe -f -t /test:code.txt /config:launcher_binary.mxres /service:scanner /nickname:input
Run Code Online (Sandbox Code Playgroud)
输出:
345 /config:launcher.mxres /service:session
4986 /config:launcher5.mxres /service:engine
912 /config:launcher_binary.mxres /service:scanner
Run Code Online (Sandbox Code Playgroud) 回答这个问题:
我在sed
4.2.2 版本中发现了以下情况。
从这个输入:
send host-name = gethostname();
domain-name, domain-name-servers, domain-search, host-name,
# option host-name "andare.swiftmedia.com";
Run Code Online (Sandbox Code Playgroud)
我只想从第二行中删除字符串“主机名”,因此预期的输出是:
send host-name = gethostname();
domain-name, domain-name-servers, domain-search,
# option host-name "andare.swiftmedia.com";
Run Code Online (Sandbox Code Playgroud)
然后我使用了以下命令:
sed -e 's/" host-name,"//g' input_file
Run Code Online (Sandbox Code Playgroud)
但是,它不会删除 input_file 上的“主机名”字符串,使其保持原样。
如果我不使用双引号:
sed -e 's/ host-name,//g' input_file
Run Code Online (Sandbox Code Playgroud)
它正确地给出了预期的输出。
我认为正确的方法是使用双引号,但无法弄清楚为什么它在这里不起作用。