Различия в синтаксисе между командной строкой и терминалом

Различия в синтаксисе между командной строкой и терминалом

Я изучаю различия между синтаксисом командной строки Windows и синтаксисом терминала Ubuntu. Я возился с cd, cd(пробел обратная косая черта), cd(обратная косая черта), cd/, cd /, cd.., cd .. и т. д... Я немного путаюсь, когда переключаюсь между двумя командными строками. Сначала казалось, что на самом деле нет никакой разницы, кроме прямого слеша, используемого в Linux, и обратного слеша, используемого в Windows.

Например, в командной строке я могу ввести

C:\>cd users  

^(без обратной косой черты)

C:\>cd \users

^(обратная косая черта перед пользователями)

C:\>cd users\

^(обратная косая черта после пользователей)

C:\>cd \users\ 

^(обратная косая черта перед и после пользователей)

Тогда как в Linux:

Выполняем тот же самый ввод, но с /home/meestermoo/Documents

Похоже, единственное различие в синтаксисе заключается в том, что Linux придирчив к размещению слеша. Он может присутствовать только перед командой cd или не присутствовать вообще. Если это верно, то этот синтаксис обычно верен для всех команд, включающих слеш? Просто пытаюсь разобраться в различиях в синтаксисе. Пожалуйста, поправьте меня, если у меня есть какие-то неверные предположения!

Спасибо!

решение1

cd \users работает так же, как cd users, потому что вы находитесь в корне диска C:\

если вы выполните команду cd users и введете cd username, вы получите тот же результат, что и в Linux.

Добавление символа \ или / к пути указывает на то, что он является абсолютным и определяется от корня диска.

Это работает одинаково на обеих платформах.

поэтому cd \users\blah в Windows cd /home/fred/documents в Linux

Ваш пример cd \users работает, потому что users существует в корне C: это не синтаксическое различие между платформами.

Связанный контент