2016-03-24 6 views
5

Я создал базовый скрипт в Windows.Cmder bash script Выполняется

#!/bin/bash 

echo Hello 

Я использую Cmder, производное ConEmu. Я попытался изменить priviliges с chmod, но они такие же. Я не знаю, как я могу выполнить этот скрипт. Обычный способ Linux, который: ./hello.sh не работает, и набрав только hello.sh, Windows пытается открыть его, что плохо, так как я хочу его в консоли. Как выполнить этот скрипт в ConEmu/Cmder?

+3

Windows, не поддерживает '#' линии, так что вы должны выполнить программу, например! 'bash hello.sh' (как вы можете в Linux) или изменить ассоциацию файлов для расширения' .sh' - см. команды 'stat' и' file'. – cdarke

+0

спасибо, это сделаю. – BadBot

ответ

7

Я заметил, что вы можете управлять bash от cmder. Так что я мог бы сделать это нравится:

> bash 
$ ./yourScript.sh 

или простой

> cat yourScript.sh | bash 

Отказ от ответственности: Новое в cmder (только что загрузили его) и Linux сам.

3

На моем собственном экземпляре Cmder, bash [filename] работает просто отлично, и я считаю, гораздо проще:

C:\Users\Conor O'Brien 
λ type test.sh 
echo Hello 

C:\Users\Conor O'Brien 
λ bash test.sh 
Hello 
1

Если вы хотите, чтобы иметь возможность запускать скрипт, просто введя его имя, обходной путь заключается в создании псевдоним и поместить его в свой .bashrc, такие как:

alias scriptName="bash /pathToTheScript/yourScript.sh" 

Или вы можете источник скрипт внутри .bashrc и сделать его доступным через функцию:

source /pathToTheScript/yourScript.sh 

где сценарий:

#!/bin/bash 
function your_function() 
{ 
yourCode 
}