pythonbrew bashrc awk行不再工作
我最近升级了我的FreeBSD盒子,现在pythonbrew似乎坏了。它从此行的.pythonbrew/etc/bashrc文件中退出:pythonbrew bashrc awk行不再工作,python,awk,pythonbrew,Python,Awk,Pythonbrew,我最近升级了我的FreeBSD盒子,现在pythonbrew似乎坏了。它从此行的.pythonbrew/etc/bashrc文件中退出: PATH_WITHOUT_PYTHONBREW=$(printf "$PATH" | awk -v RS=: -v ORS=: "/${PATH_ROOT//\//\/}/ {next} {print}" | sed -e 's#:$##') 给出了错误: awk: syntax error at source line 1 context is
PATH_WITHOUT_PYTHONBREW=$(printf "$PATH" | awk -v RS=: -v ORS=: "/${PATH_ROOT//\//\/}/ {next} {print}" | sed -e 's#:$##')
给出了错误:
awk: syntax error at source line 1
context is
>>> //home/myusername/. <<< pythonbrew/ {next} {print}
awk: bailing out at source line 1
printf“%s”“$PATH”
而不是printf“$PATH”
“/”${PATH\u ROOT//\/\/}“/{…}”
而不是“/${PATH\u ROOT//\/\/}/{…}”
awk-v path\u root=“${path\u root/\/\/\/\/}”$0~path\u root{…}
而不是“${path\u root/\/\/\/}”/{…}
PATH_WITHOUT_PYTHONBREW=$(printf "%s" "$PATH" |
awk -v path_root="${PATH_ROOT//\//\/}" 'BEGIN{RS=ORS=":"} $0 !~ path_root' |
sed -e 's#:$##')
假设您的路径根操作是有意义的
它可以进一步改进,但这应该足以消除您的错误
printf“%s”“$PATH”
而不是printf“$PATH”
“/”${PATH\u ROOT//\/\/}“/{…}”
而不是“/${PATH\u ROOT//\/\/}/{…}”
awk-v path\u root=“${path\u root/\/\/\/\/}”$0~path\u root{…}
而不是“${path\u root/\/\/\/}”/{…}
PATH_WITHOUT_PYTHONBREW=$(printf "%s" "$PATH" |
awk -v path_root="${PATH_ROOT//\//\/}" 'BEGIN{RS=ORS=":"} $0 !~ path_root' |
sed -e 's#:$##')
假设您的路径根操作是有意义的
它可以进一步改进,但这应该足以消除您的错误。在我看来,您尝试读取
awk
代码中的变量。像这样使用awk
awk-vrs=:-vrs=:-v path=$path\u root'$0==path{next…
Does${path\u root/\/\/\\\/}
工作?尽管@Jotne建议使用-v
可能是一个更好的计划。尽管使用$0~path
如果您希望正则表达式匹配而不是相等。在我看来,您尝试读取awk
代码中的变量。像这样使用awk-v RS=:-v-path=$path\u root'$0==path{下一步…
执行${PATH\u ROOT//\/\\/}
工作?尽管@Jotne建议使用-v
可能是一个更好的计划。尽管使用$0~path
,如果您希望正则表达式匹配而不是相等。太棒了,谢谢!在$0前面有一个额外的单引号,我无法删除,因为它希望编辑至少为6个字符,但一旦删除,它就可以工作了eat。我也会考虑将此作为修补程序添加到pythonbrew中。不客气,我更新了脚本以删除该单引号。如果您想用一些示例更新您的问题,说明“路径”可以包含哪些内容,以及您想要什么“没有pythonbrew的路径”要设置为给定这些路径设置,我相信我们可以向您展示如何在单个awk命令中轻松完成,而不是调用多个命令和管道。太棒了,谢谢!在$0前面有一个额外的单引号,我无法删除,因为它希望编辑至少为6个字符,但一旦删除,它就非常有用。我将考虑将此作为修补程序添加到pythonbrew。不客气,我更新了脚本以删除该单引号。如果您想用一些示例更新您的问题,说明“路径”可以包含哪些内容,以及您希望“路径”不包含pythonbrew”要设置为给定这些路径设置,我相信我们可以向您展示如何在单个awk命令中轻松地完成,而不是调用多个命令和管道。