我试着跑 Laravel Artisan 通过定义doskey别名在(docker)容器中命令。
我的想法是:
php artisan=docker-compose exec apache php artisan $1
但是它不允许我在键中使用空格。知道怎么做到这一点?
编辑 我为Windows制作了一个GUI工具来运行命令 https://github.com/thomasmoors/DockerArtisan
我试着跑 Laravel Artisan 通过定义doskey别名在(docker)容器中命令。
我的想法是:
php artisan=docker-compose exec apache php artisan $1
但是它不允许我在键中使用空格。知道怎么做到这一点?
编辑 我为Windows制作了一个GUI工具来运行命令 https://github.com/thomasmoors/DockerArtisan
Answers:
在这种情况下,我必须给出否定的答案 - 在doskey名称中使用空格是不可能的。 Doskey是为命令提示符(cmd)创建的,因此在概念上相当简单。
在我看来,这是不可能的:
doskey a b=ab
,无效选项需要“a” 以下是我运行的一些测试:
如您所见,一些特殊字符被接受,但不是空白。
即使宏名称中没有空格,
doskey是一个旧的DOS程序,只能在PowerShell中很难使用。
它与之相冲突 PSReadLine
依赖于本机控制台输入功能的模块。我测试了这个:
如您所见,您需要执行两项额外操作:
Remove-Module PSReadLine
/exename=powershell.exe
两者都完成后,命令正确执行并给出 正确的错误。
我最好的建议是不要在PowerShell中使用doskey。 Doskey很老,PowerShell是新的,它们只能一起使用 有困难。 我真的不认为doskey是如此有用,以至于无法替代。
尝试找到常用命令的另一种解决方案。
例如,将命令存储在可执行文件中,例如 .ps1
要么 .cmd
要么 .bat
在您要添加到PATH的文件夹中。
没有办法实现这一目标。 Doskey macroname不能有空格。