[英]Writing a Bash Script to Get the Token of a Jupyter Notebook Running in a Container
我運行Dockerized Jupyter Server,但不想手動獲取其訪問令牌。 所以我想寫一個bash腳本來提取令牌並用它打開服務器
我嘗試如下:
docker run --name notebook -w /home/fenics -v $(pwd):/home/fenics/shared -d -p 127.0.0.1:8888:8888 quay.io/fenicsproject/stable 'jupyter-notebook --ip=0.0.0.0'
token=`docker logs notebook 2>&1 | grep -o "token=[a-z0-9]*" | sed -n 1p`
google-chrome http://127.0.0.1:8888/?$token
但是,它不起作用。 由於docker logs notebook
命令與腳本之前的命令在同一行中以腳本或控制台的形式編寫,因此不會輸出任何內容。 但是,如果您在終端中一一寫入命令,則可以。 請告訴我如何解決問題(即使解決方案不同也可以),並解釋為什么我的代碼無法工作(我想知道,因為它已經是我要解決的第二個問題這條路)
不要使用``而是$()。 我認為外殼可能有所不同。
我只是嘗試了,它奏效了
token=$(docker logs notebook 2>&1 | grep -o "token=[a-z0-9]*"| sed -n 1p)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.