За читателите у дома: тази глава е разгледана във видеото Вашият нов приятел: Командният ред.
Вълнуващо е, нали ?! Ще напишете първия си ред код само за няколко минути! :)
Нека ви запознаем с първия ви нов приятел: командният ред!
Следващите стъпки ще ти покажат как да използваш черния прозорец, който използват всички хакери. В началото може да изглежда малко страшно, но всъщност тази подкана просто чака команди от теб.
Забележка Моля, имайте предвид, че в тази книга използваме взаимозаменяемите термини „директория“ и „папка“, но те са едно и също нещо.
Прозорецът, който обикновено се нарича команден ред или интерфейсът на командния ред, е текстово приложение за преглед, обработка и манипулиране на файлове на вашия компютър. Прилича много на Windows Explorer или Finder на Mac, но без графичния интерфейс. Други имена на командния ред са: cmd, CLI, подкана, конзола или терминал.
За да започнем някои експерименти, първо трябва да отворим интерфейса на командния ред.
{% include "/intro_to_command_line/open_instructions.md" %}
Сега трябва да видите бял или черен прозорец, който чака вашите команди.
Ако сте на Mac или Linux, вероятно виждате $, ето така:
{% filename %}command-line{% endfilename %}
$
На Windows, вероятно виждате >, ето така:
{% filename %}command-line{% endfilename %}
>
Погледнете раздела за Linux малко по-горе - ще видите нещо подобно, когато стигнете до PythonAnywhere по-късно в урока.
Всяка команда ще бъде предварително обозначена с $ или > и един интервал, но не бива да го въвеждате. Вашият компютър ще го направи вместо вас. :)
Само малка забележка: във твоя случай може да има нещо като
C:\Users\ola>илиOlas-MacBook-Air:~ ola$преди знака на подкана и това е 100% ОК.
Частта до и включително $ или > се нарича командния ред или подкана за кратко. То те подканва да въведеш нещо там.
В ръковдството, когато искаме да въведете команда, ще включим $ или >, а понякога и повече вляво. Игнорирай лявата част и въведи само командата, която започва след подканата.
Нека започнем с въвеждането на тази команда:
{% filename %}command-line{% endfilename %}
$ whoami
{% filename %}command-line{% endfilename %}
> whoami
И след това натиснете enter. Това е нашият резултат:
{% filename %}command-line{% endfilename %}
$ whoami
olasitarska
Както можете да видите, компютърът току-що отпечата вашето потребителско име. Яко, а? :)
Опитайте да въведете всяка команда; не копирайте-поставете. Ще запомните повече по този начин!
Всяка операционна система има малко по-различен набор от команди за командния ред, така че не забравяйте да следвате инструкциите за вашата операционна система. Нека опитаме това, става ли?
Би било хубаво да знаем къде сме сега, нали? Да видим. Въведете тази команда и натиснете enter:
{% filename %}command-line{% endfilename %}
$ pwd
/Users/olasitarska
Забележка: 'pwd' означава 'print working directory' (принтиране работна директория).
{% filename %}command-line{% endfilename %}
> cd
C:\Users\olasitarska
Note: 'cd' stands for 'change directory'. With PowerShell you can use pwd just like on Linux or Mac OS X.
Вероятно ще видите нещо подобно на вашата машина. След като отворите командния ред, обикновено стартирате в домашната директория на вашия потребител.
Много команди, които можеш да въведеш в командния ред, имат вградена помощ, която можеш да показваш и да четеш! Например, за да научиш повече за текущата команда на директория:
OS X и Linux имат команда man, която ви предоставя помощ за команди. Опитайте man pwd и вижте какво пише, или поставете man преди други команди, за да видите помощта им. Изходът на man обикновено се изписва на страницата. Използвайте интервала, за да преминете към следващата страница, и q, за да прекратите прегледа на помощта.
Добавянето на /? суфикс към повечето команди ще отпечата помощната страница. Може да се наложи да превъртите прозореца на вашата команда нагоре, за да видите всичко. Опитайте cd /?.
И така, какво има в него? Ще е готино да разберем. Да видим:
{% filename %}command-line{% endfilename %}
$ ls
Applications
Desktop
Downloads
Music
...
{% filename %}command-line{% endfilename %}
> dir
Directory of C:\Users\olasitarska
05/08/2020 07:28 PM <DIR> Applications
05/08/2020 07:28 PM <DIR> Desktop
05/08/2020 07:28 PM <DIR> Downloads
05/08/2020 07:28 PM <DIR> Music
...
Note: In PowerShell you can also use 'ls' like on Linux and Mac OS X.
Сега, нека да отидем на вашата директория Desktop:
{% filename %}command-line{% endfilename %}
$ cd Desktop
{% filename %}command-line{% endfilename %}
$ cd Desktop
Отбележи, че името на директорията "Desktop" може да се преведе на езика на вашия Linux акаунт. В такъв случай ще трябва да замените Desktop с преведеното име; например, Работен плот за български език.
{% filename %}command-line{% endfilename %}
> cd Desktop
Проверете дали наистина е променена:
{% filename %}command-line{% endfilename %}
$ pwd
/Users/olasitarska/Desktop
{% filename %}command-line{% endfilename %}
> cd
C:\Users\olasitarska\Desktop
Ето го!
PRO съвет: ако напишете
cd Dи след това натиснетеtabна клавиатурата си, командният ред автоматично ще попълни останалото име, за да можете да навигирате по-бързо. Ако има повече от една папка, започваща с „D“, натиснете два пъти клавишаtab, за да получите списък с опции.
Какво ще кажете за създаването на тестова директория на вашия работен плот? Можете да го направите по този начин:
{% filename %}command-line{% endfilename %}
$ mkdir practice
{% filename %}command-line{% endfilename %}
> mkdir practice
Тази малка команда ще създаде папка с името practice на вашия работен плот. Можете да проверите дали е там, като погледнете на работния си плот или като изпълните команда ls или dir! Опитайте. :)
PRO съвет: Ако не искате да въвеждате едни и същи команди отново и отново, опитайте да натиснете
стрелката нагореистрелка надолуна клавиатурата си, за да преминете през последните използвани команди.
Малко предизвикателство за вас: в новосъздадената си директория practice създайте директория, наречена test. (Използвайте командите cd и mkdir.)
{% filename %}command-line{% endfilename %}
$ cd practice
$ mkdir test
$ ls
test
{% filename %}command-line{% endfilename %}
> cd practice
> mkdir test
> dir
05/08/2020 07:28 PM <DIR> test
Поздравления! :)
Не искаме да оставим бъркотия, така че нека премахнем всичко, което направихме до този момент.
Първо, трябва да се върнем към Desktop:
{% filename %}command-line{% endfilename %}
$ cd ..
{% filename %}command-line{% endfilename %}
> cd ..
Използването на .. с командата cd ще промени текущата ви директория на родителската директория (тоест директорията, която съдържа текущата ви директория).
Проверете къде се намирате:
{% filename %}command-line{% endfilename %}
$ pwd
/Users/olasitarska/Desktop
{% filename %}command-line{% endfilename %}
> cd
C:\Users\olasitarska\Desktop
Сега е време за изтриване на директорията practice:
Внимание: Изтриването на файлове с помощта на
del,rmdirилиrmе безвъзвратно, което означава, че изтритите файлове ще изчезнат завинаги! Затова бъдете много внимателни с тази команда.
{% filename %}command-line{% endfilename %}
$ rm -r practice
{% filename %}command-line{% endfilename %}
> rmdir /S practice
practice, Are you sure <Y/N>? Y
Готово! За да сме сигурни, че е действително изтрита, нека проверим:
{% filename %}command-line{% endfilename %}
$ ls
{% filename %}command-line{% endfilename %}
> dir
Това е засега! Можете спокойно да затворите командния ред. Да го направим по хакерския начин, окей? :)
{% filename %}command-line{% endfilename %}
$ exit
{% filename %}command-line{% endfilename %}
> exit
Готино, а? :)
Ето обобщение на някои полезни команди:
| Команда (Windows) | Команда (Mac OS / Linux) | Описание | Пример |
|---|---|---|---|
| exit | exit | затваряне на прозореца | exit |
| cd | cd | промяна на директория | cd test |
| cd | pwd | показване на текущата директория | cd (Windows) или pwd (Mac OS / Linux) |
| dir | ls | списък директории / файлове | dir |
| copy | cp | копие на файл | copy c:\test\test.txt c:\windows\test.txt |
| move | mv | преместване на файл | move c:\test\test.txt c:\windows\test.txt |
| mkdir | mkdir | създаване на нова директория | mkdir testdirectory |
| rmdir (или del) | rm | изтриване на файл | del c:\test\test.txt |
| rmdir /S | rm -r | изтриване на директория | rm -r testdirectory |
| [CMD] /? | man [CMD] | получете помощ за команда | cd /? (Windows) или man cd (Mac OS / Linux) |
Това е само една малка част от командите, които можете да изпълнявате във вашия команден ред, но днес няма да използвате нищо повече от това.
Ако ви е любопитно, ss64.com съдържа пълна справка с команди за всички операционни системи.
Нека се потопим в Python!