2015-08-17 5 views
1

Я начал использовать GitShell на своем компьютере с Windows 7, чтобы попытаться заставить скрипт работать правильно. Когда я ввожу ls в оболочку, он отлично работает и отображает файл. Когда я типа ls -a или ls -la это дает мне эту ошибку -Почему ls работает в GitShell, но ls -a или ls -la не работает?

Get-ChildItem : A parameter cannot be found that matches parameter name 'a'. 
At line:1 char:6 
+ ls -a <<<< 
+ CategoryInfo   : InvalidArgument: (:) [Get-ChildItem], ParameterB 
indingException 
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Comm 
ands.GetChildItemCommand 

Мой коллега использует команды на ее идентичного компьютер просто отлично. В чем проблема?

ответ

3

Это потому, что вы вводите команды в PowerShell, а не в GitShell.

PowerShell имеет команду ls, но это псевдоним Get-ChildItem, который не имеет те же переключатели, как команда ls как найти в UNIX оболочек.

+0

А, ок. Вместо этого я поместил Git Bash на основании того, что вы сказали, и теперь он работает правильно. Спасибо за указатель в правильном направлении! – user1210304

+1

@KyleVassella вы должны задать это как новый вопрос, хотя это может помочь: https://superuser.com/questions/364083/windows-list-files-and-their-permissions-access-in-command-line - знать что из-за различий в том, как Windows и Linux обрабатывают разрешения и ACL, вы, вероятно, не получите точно аналогичный способ сделать это. – Kev

0

Если вы можете воспользоваться клиентом GitHub gui на мгновение, тогда запустите его. Затем откройте «Опции ...» (под значком маленькой шестерни). Затем, где у него есть «Стандартная оболочка», выберите «Git Bash» вместо «PowerShell».

Как только вы это сделаете, вы можете открыть оболочку Git, и вместо этого она откроет оболочку bash, и вы сможете использовать ls -al и все остальные команды, которые powershell не делают правильно.

Смежные вопросы