sed 空白符 打印第二个
时间: 2023-07-03 08:31:13 浏览: 76
可以使用以下命令打印第二个空白符之后的内容:
```
echo "hello world how are you?" | sed 's/[^[:blank:]]*[[:blank:]]\{1,\}\([^[:blank:]]*\)[[:blank:]]\{1,\}.*/\1/'
```
输出:
```
how
```
解释:
- `[^[:blank:]]*[[:blank:]]\{1,\}` 匹配第一个空白符之前的内容。
- `\([^[:blank:]]*\)` 匹配第二个空白符之后的内容并捕获。
- `[[:blank:]]\{1,\}` 匹配第二个空白符之后的所有空白符。
- `.*` 匹配第二个空白符之后的所有内容。
- `\1` 输出第二个空白符之后的内容。
相关问题
linux sed打印倒数第二行
要在Linux中使用sed打印倒数第二行,可以使用以下命令:
```
sed -n '$-1p' <file_path>
```
将`<file_path>`替换为要操作的文件的路径。
这个命令中的`-n`参数用于关闭sed的默认输出,`$-1`表示倒数第二行,`p`表示打印。
示例用法:
```
sed -n '$-1p' file.txt
```
这个命令将打印文件file.txt的倒数第二行。
请注意,如果文件行数不足两行,命令将不会产生任何输出。
sed怎样打印第一行第二列的内容
可以使用以下命令来打印第一行第二列的内容:
```
sed -n '1p' filename | awk '{print $2}'
```
其中,`sed -n '1p' filename` 表示打印文件的第一行,`awk '{print $2}'` 表示打印第二列的内容。通过将两个命令组合起来,就可以实现打印第一行第二列的内容。