gpt4 book ai didi

python - 使用 bash 获取第一行的第二个单词

转载 作者:太空宇宙 更新时间:2023-11-04 04:36:35 25 4
gpt4 key购买 nike

我正在编写一个简单的脚本,需要使用 bash 命令来获取第一行的第二个单词。在下面的文件中,我只想打印“主机”,尽管我在这方面遇到了困难。

-bash-3.2$ cat filewithstuff
SERVERNAME host
DOMAIN all-nfs


-bash-3.2$ cat filewithstuff | awk '{print $2}'
host
all-nfs

我能够在 Linux 主机上使用以下命令:

cat filewithstuff | sed -n 1p | awk "{print \$1}"

尽管当我从 Python 脚本运行它时,我收到以下错误:

Executed: /bin/bash -l -c "cat filewithstuff | sed -n 1p | awk \"{print \\$1}\""

Aborting.

Fatal error: One or more hosts failed while executing task 'uninstallApp'

Aborting.

我的 Python 脚本似乎不喜欢 bash 命令中的“\”,有人知道我可以尝试的替代命令吗?

最佳答案

让 awk 完成所有工作:

command | awk 'NR==1 {print $2}'

awk 'NR==1 {print $2}' file

NR 代表记录数(此处为行数),$2 代表第二个字段。总之,它告诉 awk 打印第一行的第二个字段。

如果您怀疑输出会非常大,请添加 exit 来停止处理:{print $2;退出}

关于python - 使用 bash 获取第一行的第二个单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41451018/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com