Powershell Core - Как сделать исполняемый файл типа linux

Есть ли ядро ​​PowerShell, эквивалентное следующей команде bash при работе в Linux:

sudo chmod +x myexec

Я хочу сделать этот тип файла исполняемым. Это просто сделать с помощью bash, но я бы предпочел использовать PowerShell, если это возможно.

Пока что я использую следующую команду:

bash -c "chmod +x myexec"

person Stacey    schedule 13.04.2019    source источник
comment
Просто вызовите sudo chmod +x myexec напрямую; sudo - это внешняя утилита, как и chmod, поэтому у PowerShell нет проблем с их прямым вызовом.   -  person mklement0    schedule 13.04.2019
comment
В качестве отступления: ваша команда создает исполняемый файл данного файла, а не файл типа.   -  person mklement0    schedule 13.04.2019
comment
Уточните, на какой платформе вы планируете это запустить.   -  person mklement0    schedule 13.04.2019


Ответы (2)


Исполняемый флаг - это термин linux / unix. ... на windows это не актуально.

Придерживайтесь решения, которое у вас есть в настоящее время, для вызова команды bash из сценария PS.

person Shahar Hadas    schedule 13.04.2019
comment
Ядро PowerShell явно не зависит от платформы. Поэтому не имеет значения, актуален ли исполняемый флаг в Windows или нет. PowerShell Core должен включить параметр + x через Set-ItemProperty. У меня не было возможности проверить исходный код, возможно это или нет. - person Marvin Dickhaus; 26.10.2020

вы можете использовать следующий код, он работал очень хорошо для моих нужд, которые я тестировал на pwsh версии 7 на opensuse.

function Invoke-Sudo { 
    & /usr/bin/env sudo pwsh -command "& $args" 
}
Invoke-Sudo "chmod +x /usr/bin/filename"

Надеюсь, это вам поможет!

person Jorge Luis Rodriguez Carpio    schedule 29.03.2020