38

Я хочу научиться лучше использовать командную строку в Windows, чтобы иметь больше контроля над тем, что я делаю, и просто для обучения. Главное раздражение, которое у меня есть сейчас, - это все, что я печатаю. Если я хочу выполнить операцию с файлом с большим путем, я сижу там, набирая его, по крайней мере, в течение минуты, и если я совершаю ошибку, мне нужно нажать клавишу со стрелкой вверх, пролистать всю вещь и найти что я сделал не так Есть ли инструменты, чтобы сделать это проще?

19 ответов19

45

Вы можете использовать клавишу Tab для автоматического заполнения имен файлов. Хотя имейте в виду, что вы должны сначала набрать достаточно имени файла, чтобы однозначно идентифицировать его, иначе вам придется перетасовать неправильные совпадения. Например, у вас есть папка с этими файлами, и это ваш текущий каталог, в котором вы сидите с cmd:

.
..
Su.exe
Sup.txt
SuperUser.COM

если вы хотите автоматически заполнить SuperUser.COM , вам нужно будет набрать supe затем нажать Tab , поскольку ни один из других файлов не начинается с этих 4 символов. Обратите внимание, что если вы набрали su а затем нажали Tab , вы можете нажать Tab еще два раза, чтобы перейти к SuperUser.COM или вы можете нажать Shift Tab, чтобы вернуться назад по списку и попасть туда.

Другой трюк - если у вас есть файл в окне проводника, вы можете перетащить его в окно cmd и он напечатает для вас имя.

33

Если вы намереваетесь использовать командную строку только под Windows, вы можете использовать Windows PowerShell, поскольку она проще в использовании, чем исходная командная строка, и копирует некоторые действия из * nix-подобных терминалов. (Он также предоставляет гораздо больше функциональных возможностей, но сначала, по крайней мере для меня, это "более простая командная оболочка").

изображение powershell

Изменить: Изменен рисунок для более "дружественного".

27

Вот еще несколько советов и приемов использования командной строки, в том числе:

«... перетащите n-drop файлы или папки из окна проводника в командную строку; при этом путь в кавычках будет вставлен, как если бы вы его вставили вручную ...»

Это еще один способ уменьшить количество операций печати, связанных с длинными путями к файлам.

21

Вот полный список действий функциональных клавиш:

F1 retypes the previous command one character at a time
F2 brings up a dialog and asks “Enter the char to copy up to:”
F3 retypes the last command in full
F4 brings up a dialog and asks “Enter char to delete up to:”
F5 as for F3
F6 Print EOF character (Ctrl+Z)
F7 brings up a dialog of all the recent command history
F8 brings up each of the most recent commands, one at a time
F9 brings up a dialog and asks “Enter command number:”
15

Нажатие F7 выведет список последних выполненных команд.

cd \ чтобы вернуться в каталог c: .

8

Часто вы можете уменьшить количество набрав, находясь в правильном каталоге. Вы можете открыть командную оболочку в каталоге, который вы видите в окне проводника, добавив cmd.exe в ассоциации типов папок.

(Инструменты - Параметры папки - Типы файлов - Папка - Дополнительно - Новый - cmd)

Затем, когда вы выберете cmd, щелкнув правой кнопкой мыши по этой папке, в открывшемся окне команд будет текущий каталог, в котором вы щелкнули.

альтернативный текст

7

Если Windows PowerShell слишком перегружен, есть также несколько сменных оболочек cmd:

И многое другое можно найти через Google.

7

При использовании командной строки я постоянно использую стрелку вверх (и стрелку вниз) для прокрутки недавно использованных команд. Особенно, когда я ввел длинную команду и хочу только отредактировать некоторую ее часть, не вводя ее повторно.

Короткий пример, если вы:

c:\>ping 192.168.1.1

А затем хотите пропинговать другой подобный адрес, вы можете просто нажать стрелку вверх. Команда появляется в приглашении с курсором в конце. Это позволяет с легкостью вернуться на одну позицию назад и изменить адрес на 192.168.1.2 или что-то подобное.

4

Включить режим быстрого редактирования, чтобы:

  • Скопируйте текст: выберите текст + ENTER
  • Вставьте код, нажав правую кнопку мыши.

Я также изменяю шрифт и макет на что-то более приятное, чем битовая карта по умолчанию.

Наконец, добавьте больше строк и столбцов в окне редактирования и больше строк в буфер.

Скриншоты на испанском, но они точно в том же месте на английском

4

Я предлагаю вам использовать командную строку.

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

2

Обязательно возьмите копию Cygwin и добавьте ее папку \bin в переменную PATH. Это как удобная командная строка!

Но на самом деле, единственный способ привыкнуть к этому - привыкнуть к нему, так что используйте его!

1

Используйте переменные среды.

Например, вместо ввода c:\documents and settings\username вы можете просто использовать% userprofile%. Чтобы получить список стандартных переменных среды, введите SET и нажмите Enter в командной строке.

Кроме того, ознакомьтесь с командами, которые вам доступны - мне нравятся два сайта для них:www.ss64.com и www.robvanderwoude.com

Вы также можете изучить пакетный сценарий - с его помощью вы можете автоматизировать часто используемые задачи.

1

В этой теме есть несколько замечательных советов!

На мой взгляд, публикация замен CMD скорее «не по теме». Но, похоже, все в порядке, поэтому я могу добавить ColorConsole в список.

Интерфейс с вкладками, меню « Любимые команды», « Копировать / вырезать и вставить», а также экспорт HTML - очень полезные функции, которые я больше не хочу пропустить.

ps: попробуйте это в ветке "Должны быть аддоны Firefox": Ребята, получите Opera, в ней есть встроенные плюсы! :)

1

Если вы используете XP (не знаете о Vista), вы можете скачать Powertoy, который добавляет пункт меню "Открыть окно команды здесь" в контекстное меню папки проводника.

Что-то еще, что я нашел полезным, - перестать использовать пути Windows по умолчанию для всего. Их слишком сложно запомнить, и пробелы могут стать проблемой. Использование чего-то более похожего на структуру каталогов linux может сэкономить время. Мои каталоги выглядят примерно так (в качестве примеров):

 - C:\usr\bin\firefox 
 - C:\usr\bin\7zip
 - C:\usr\bin\dropbox

 - C:\usr\lang\cpp\gcc
 - C:\usr\lang\cpp\lib\qt_4_5_0
 - C:\usr\lang\python\py25

 - C:\usr\home\wrksp\cpp
 - C:\usr\home\doc
 - C:\usr\home\wrksp\svn

Намного легче запомнить.

1
  • Чтобы вставить в командное окно с помощью клавиатуры, нажмите alt-space, e, p.
  • Чтобы повторить последнюю команду, начинающуюся с буквы "d" (например, это может быть любой символ), нажмите d, а затем F8.

Последний совет может показаться неясным, но когда вы проводите много времени в консоли, это может быть намного быстрее и проще, чем нажатие стрелки вверх или F8 несколько раз.

1

Вы можете найти «Полезные команды командной строки в Windows» из раздела «Ошибка сервера» полезными. На самом деле, есть довольно много интересных вопросов о командной строке , посмотрите.

1

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

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

Когда вы ознакомитесь с командной строкой, вы можете перенести свои повседневные задачи туда только потому, что это проще, чем всегда тянуться к мышке :)

0

Я согласен с предложением использовать powershell. Кроме того, я нахожу невероятно полезным настраивать функции и псевдонимы, чтобы сводить общие задачи к меньшему количеству набираемых букв.

Например, чтобы запустить ссылку http, я настроил это в своем профиле powershell:

function browse-url { param($url="http://www.google.com/"); (new-object -com shell.application).ShellExecute($url); }
set-alias -name "browse" -value "browse-url"

а затем я просто browse чтобы открыть Google, или browse http://.... чтобы открыть конкретную ссылку

Другой пример для вывода списка файлов или каталогов:

function lsa { param($path="."); Get-ChildItem -Force $path }
set-alias -name "la" -value "lsa"
set-alias -name "ll" -value "lsa"
function lsd { param($path="."); lsa $path | ? { $_.PSIsContainer } }
function lsf { param($path="."); lsa $path | ? { !$_.PSIsContainer } }
function lat { param($path="."); lsa $path | sort -property lastwritetime -descending }
function latr { param($path="."); lsa $path | sort -property lastwritetime }
function fi { param($pat,$root="."); gci -r $root | ? {$_.Name -match $pat} | % { $_.FullName } }

А затем я использую lsa чтобы показать все элементы в каталоге, включая скрытые. Используйте la или ll как еще более короткие псевдонимы.

Я использую lsd в список только папки, lsf перечислять только файлы, lat в список заказанного последнего времени записи, и latr перечислить по времени в обратном направлении.
fi была настроена как простая замена команды unix find , просто рекурсивно ищите имя файла.

0

Установите Windows Explorer вместо Xplorer2. Он включает в себя инструмент командной строки, который позволяет использовать все функции командной строки, в том числе с помощью графического интерфейса Windows, например использование мыши, щелчок правой кнопкой мыши для функций копирования и вставки и т.д. Посмотрите на снимок экрана ниже.

Скриншот командной строки

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