3

Я хочу использовать команду start Windows в bash на Ubuntu в Windows (т. Е. WSL). Однако я не мог использовать его, просто набрав start:

nek@NEK:/mnt/c/Users/Nek$ start test.txt
Command 'start' is available in '/sbin/start'
The command could not be located because '/sbin' is not included in the PATH environment variable.
This is most likely caused by the lack of administrative privileges associated with your user account.
start: command not found

И я заметил, что start.exe может не существовать.

C:\Users\Nek>where start
INFO: Could not find files for the given pattern(s).

Является ли start встроенной команды? Можем ли мы использовать start в Bash?

Среда

  • Windows 10 build 14393.693 (обновление: эта версия старая для выполнения файлов .exe на bash. Я должен обновить сборку Windows> = 14951, а затем следовать ответу.)
  • Bash на Ubuntu в Windows (выпуск bash 4.3.11 (1) x86_64-pc-linux-gnu, Ubuntu 14.04)

Ссылки по теме

2 ответа2

4

Является ли запуск встроенной команды?

Да.

Внутренние команды

Оболочка CMD Windows CMD.exe содержит ряд «внутренних» команд, дополнительные «внешние» команды также поставляются в виде отдельных исполняемых файлов. Внешние команды обычно хранятся в папке C:\WINDOWS\System32, эта папка является частью системного PATH.

Такое расположение означает, что как внутренние, так и внешние команды всегда доступны независимо от того, какой у вас текущий каталог.

ASSOC, BREAK, CALL, CD/CHDIR, CLS, COLOR, COPY, DATE, DEL, DIR, DPATH, ECHO, ENDLOCAL, ERASE, EXIT, FOR, FTYPE, GOTO, IF, KEYS, MD/MKDIR, MKLINK (перспектива и выше), MOVE, PATH, PAUSE, POPD, PROMPT, PUSHD, REM, REN/RENAME, RD/RMDIR, SET, SETLOCAL, SHIFT, START, TIME, TITLE, TYPE, VER, VERIFY, VOL

Исходный синтаксис-внутренний


Можем ли мы использовать начало в Bash?

Да. Запустите командную оболочку и выполните команду запуска.

Пример:

cmd.exe /c start "" test.txt

Если это не работает, укажите полный путь следующим образом:

/mnt/c/Windows/system32/cmd.exe /c start "" test.txt

Дальнейшее чтение

  • Индекс AZ командной строки Windows CMD - Отличный справочник по всем вопросам, связанным с командной строкой Windows.
  • cmd - Запустить новую оболочку CMD и (необязательно) запустить команду / исполняемую программу.
  • start - запустить программу, команду или пакетный скрипт (открывается в новом окне).
1

Приведенный выше ответ не сработал для меня - cmd.exe ожидает путь Windows (C:\this\that), а не путь Linux. Следующая функция оболочки запустила меня и запустила:

function start {
    wpath="$(/bin/wslpath -w '$@')"
    cmd.exe /c start "" "$wpath"
}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .