我正在尝试写一个别名来获取docker容器的ip.
该命令如下:
该命令如下:
docker inspect redis | grep IPAddress | awk 'NR==3{ print $2 }' | sed 's/[^"]*"\([^"]*\)".*/\1/'
如果我从命令行启动它,它可以正常工作.
然后我将其插入bash_aliases:
alias redis-ip="docker inspect redis | grep IPAddress | awk 'NR==3{ print $2 }' | sed 's/[^"]*"\([^"]*\)".*/\1/'"
但是当我启动redis-ip时,我收到此错误:
sed: -e expression #1, char 19: invalid reference \1 on `s' command's RHS
任何人都可以告诉我有什么错误?
最佳答案
为此使用shell函数而不是别名:
function redis-ip {
docker inspect redis |
grep IPAddress |
awk 'NR == 3 { print $2 }' |
sed 's/[^"]*"\([^"]*\)".*/\1/'
}
如果sed做你想做的或不做的事,我不知道,因为我不知道docker命令输出什么.
相关文章
转载注明原文:linux – `sed` regexp错误 - 代码日志