root@newland-VirtualBox:/home/newland# echo "sysctl kernel.sem kernel.sem = 32000 1024000000 500 32000" | awk -F'[ =]+' '{print $4" = "$5}' 32000 = 1024000000
时间: 2024-03-14 10:46:04 浏览: 17
看起来 awk 命令仍然没有正确提取 "kernel.sem = 32000"。这是因为第五个字段后面还有空格和其他的字段,导致 awk 命令没有正确识别。为了解决这个问题,可以使用 awk 的 NF 变量来指定最后一个字段,而不是使用固定的字段位置。具体来说,可以按照以下步骤进行:
```
echo "sysctl kernel.sem kernel.sem = 32000 1024000000 500 32000" | awk -F'[ =]+' '{for(i=1;i<=NF;i++){if($i=="kernel.sem"){print $i" = "$3}}}'
```
其中,-F 选项和之前一样指定分隔符为一个或多个空格或等号,然后 '{for(i=1;i<=NF;i++){if($i=="kernel.sem"){print $i" = "$3}}}' 表示循环遍历所有的字段,当字段值为 "kernel.sem" 时,输出 "kernel.sem = " 后面的字段。
这样,就可以得到正确的输出 "kernel.sem = 32000"。
相关问题
root@newland-VirtualBox:/home/newland# echo "sysctl kernel.sem kernel.sem = 32000 1024000000 500 32000" | awk '{print $3" = "$4}' kernel.sem = =
看起来 awk 命令并没有正确提取 "kernel.sem = 32000"。这可能是因为输入字符串中的等号 "=" 没有被正确处理。为了解决这个问题,可以使用 awk 的 -F 选项指定输入字符串的分隔符,然后再提取对应的字段。具体来说,可以按照以下步骤进行:
```
echo "sysctl kernel.sem kernel.sem = 32000 1024000000 500 32000" | awk -F'[ =]+' '{print $4" = "$5}'
```
其中,-F 选项指定分隔符为一个或多个空格或等号,然后 '{print $4" = "$5}' 表示输出第四个和第五个字段,并用 "=" 符号将它们连接起来进行输出。
这样,就可以得到正确的输出 "kernel.sem = 32000"。
Consider defining a bean of type 'com.newland.nmc.service.StaffService' in your configuration.
这个错误通常出现在Spring框架中。它表示在应用程序的Spring配置文件中找不到类型为'com.newland.nmc.service.StaffService'的bean定义。有可能是由于以下原因导致的:
1. StaffService类没有被正确地声明为一个Spring bean。
2. 配置文件中没有正确地指定StaffService类的bean定义。
3. 项目中没有包含StaffService类的正确版本。
要解决这个问题,可以尝试以下步骤:
1. 确认StaffService类已经被正确地声明为一个Spring bean,并且它的bean定义在配置文件中已经正确地指定了。
2. 检查StaffService类的版本是否正确,并且在项目中已经包含了该类的正确版本。
3. 如果以上两个步骤都没有解决问题,可以尝试重新构建和部署项目。