我的操作系统是Windows。创建Docker容器并使用Windows powershell与之交互时:
docker create -i --name test_container debian
docker container start -i test_container
并运行ls
之类的命令,则会出现以下错误:
bash: line 2: $'ls\r': command not found
我认为这是因为windows中的换行符(\r\n
)与unix中的换行符(\n
)不同。
如何使用Powershell与Docker交互?
我在网上搜索过这个问题的解决方案,但是只得到了转换文件的结果,而没有直接使用powershell。我也查看了Docker的设置,看看是否有关于这个问题的选项,但是没有找到任何东西来改变这个行为。运行docker start --help
并没有提供任何特殊的选项来使用powershell。
我特别想使用powershell,因为我不喜欢cmd和Docker提供的shell(例如,上/下键不能按预期工作)。
2条答案
按热度按时间juzqafwq1#
以下列身份运行:
下面对标志的释义:
ubby3x7f2#
我现在才意识到,在创建容器时应该传递pseudo-tty选项(
-t
)。以下运行没有问题:
问题就这样解决了。