运行 bash 命令来自 windows 命令行 (WSL)
Run bash command from windows Command line (WSL)
我已经在 Windows 10 Pro 上安装了 WSL。
我需要从 Windows 命令行执行 bash 命令,如下所示:
bash -c ll
预期:ll
命令行控制台中的命令输出
实践中:/bin/bash: ll: command not found
但它适用于某些命令,例如 ls
或 apt
。
请参阅:
可能是什么问题?
ll
是一个常见的别名(对于 WSL 中的 ls -alF
;在默认 .bashrc
中定义)。根据您调用的方式 bash
将确定设置您的系统别名的脚本是否为 运行。请参阅 bash
手册的 INVOCATION
部分。
您可以使用 bash -i -c ll
以适合 WSL 的方式调用 bash
。
显然 ll
是您在某些配置文件中定义的别名。你应该开始 bash 如下:
bash -ilc ll
根据您定义别名的位置,您可以省略 -i
或 -l
标志。
ll
通常是 'ls -l
的别名,不能(不应该)在脚本或命令行中使用。
而是直接使用命令本身:bash -c 'ls -l'
。
要查看某个命令是否是别名,请使用命令 type
:
type ll
ll is aliased to `ls -l'
我已经在 Windows 10 Pro 上安装了 WSL。 我需要从 Windows 命令行执行 bash 命令,如下所示:
bash -c ll
预期:ll
命令行控制台中的命令输出
实践中:/bin/bash: ll: command not found
但它适用于某些命令,例如 ls
或 apt
。
请参阅:
可能是什么问题?
ll
是一个常见的别名(对于 WSL 中的 ls -alF
;在默认 .bashrc
中定义)。根据您调用的方式 bash
将确定设置您的系统别名的脚本是否为 运行。请参阅 bash
手册的 INVOCATION
部分。
您可以使用 bash -i -c ll
以适合 WSL 的方式调用 bash
。
显然 ll
是您在某些配置文件中定义的别名。你应该开始 bash 如下:
bash -ilc ll
根据您定义别名的位置,您可以省略 -i
或 -l
标志。
ll
通常是 'ls -l
的别名,不能(不应该)在脚本或命令行中使用。
而是直接使用命令本身:bash -c 'ls -l'
。
要查看某个命令是否是别名,请使用命令 type
:
type ll
ll is aliased to `ls -l'