от Н. Антонов(3-05-2004)

рейтинг (71)   [ добре ]  [ зле ]

Printer Friendly Вариант за отпечатване

Това е поредният матераил, ориентиран към напълно начинаещите. Ако имате известен опит с DOS, няма да ви е съвсем непознато, даже някои команди са напълно идентични. Огромната сила на командния ред в Unix се разкрива чрез възможността да се пишат малки или обемисти скриптове (автоматизирани поредици от команди), равняващи се по мощ на цели приложения, с които администраторите решават множество сложни задачи, каквито програмите в графичен режим не могат да изпълнят или го правят с цената на много изхабени системни ресурси. Затова всички предсказания, че командният ред някой ден ще отживее, са лъжепророчески. Всеки администратор ще ви каже, че без него просто не може, не защото така е решил някой, а защото наистина не може.

Една от най-често използваните команди може би си остава 'ls'. Тя показва съдържанието на текущата директория, като извежда списък с файловете и поддиректориите в нея. Ако приложите командата с опцията '-l', ще видите подробна информация за атрибутите на файловете и директориите като дата на създаване, размер, потребителски привилегии. С опцията '-a' ще видите скритите файлове и директории, чиито имена започват с “.”. Ако искате да видите съдържанието на някоя друга директория, трябва да я добавите като допълнителен параметър.

Тук вече използвахме два важни термина за командния ред - опция и параметър. Опцията казва на командния интерпретатор по какъв начин да изпълни командата, ако имаме някакви изисквания, а параметърът дава допълнителна информация за обекта на командата (например файл или директория).

Изпълнете следната поредица от команди и вижте резултата.

проста команда

'ls'

команда с опция

'ls -la'

команда с опция и параметър

'ls -la /usr'

Внимание, за разлика от DOS, в Linux за разделител между директориите и файловете вместо '\{}' се използва '/'!

Ако се опитате да стартирате несъществуваща команда, Linux ще ви предупреди за това. Предупреждение “Permission denied” и отказ ще получите и ако се опитате да стартирате команда, за която нямате необходимите права. Точно така, Linux следи за това дали имате право да четете или променяте файловете.

Имайте предвид, че Linux прави задължителна разлика между малки и големи букви. Това означава, че директориите '/home/ivan' и '/home/Ivan' са различни. Същото е и с командите. Ако решите да изпълните 'LS' вместо 'ls', ще видите съобщение, че такава команда няма. Това също е една от първите разлики с командния ред на DOS, където еднакво успешно можете да изпълните 'dir' и 'DIR'.

Командата 'ls', разбира се, не е най-подходящият пример за администриране на системата чрез команден ред. Далеч по-мощни възможности имат командите 'ifconfig', 'route', 'adduser'... За тях обаче ще говорим друг път.

Как да се ориентирам в командния ред, ако не знам командите?

Най-удобният инструмент за изпълнение на повечето рутинни задачи в команден ред, с който начинаещите свикват бързо, е 'mc' (Midnight Commander). Който познава стария и верен Norton Commander в DOS, ще се ориентира лесно.

С Midnight Commander можете да разглеждате директориите, да копирате файлове с натискане на бутона “F5”, да четете и редактирате стандартните текстови и конфигурационни файлове с “F4”, да отваряте и разархивирате компресирани файлове от типа *tar.gz, *.bz2 и разбира се *.zip. Възможностите на 'mc' са много. Дори можете да отваряте FTP-сесии на отдалечени сървъри.

А ето и най-често използваните команди в Linux:

cd [директория]

Преминава в дадена поддиректория.

cd ..

Връщате се една директория по-нагоре.

cd /[директория]

Преминава в дадена директория спрямо коренната '/'. Този начин на означение се нарича абсолютен път до директорията за разлика от горепосочения, който е относителен и зависи от текущата директория, в която работите в за момента.

cd

Преминава в домашната директория на текущия потребител

cp [файл-обект] [крайна цел]

Копира файл.

ln -s [файл-обект] [име на линк]

Създава символна връзка към файл-обект.

ls [директория]

Показва съдържанието на посочена директория.

ls -l [директория]

Извежда подробна информация за файловете, съдържащи се в дадена директория (размер, дата на създаване, потребителски права, вид).

ls -a [директория]

Показва скритите файлове в дадена директория. Това са файлове, чиито имена започват с “.”. Linux не ги показва по подразбиране.

mkdir [име на нова директория]

Създава нова директория с избрано име.

more [име на файл]

Показва съдържанието на текстов файл. Алтернатива на командата 'more' е командата 'less'.

mv [файл-обект] [крайна цел]

Премества/преименува даден файл.

rm [име на файл]

Изтрива даден файл.

rm -r [директория]

Изтрива рекурсивно дадена директория. Когато кажете на Linux да изтрие една директория, съдържаща поддиректории, той ще откаже и ще ви предупреди, че директорията не е празна. Ако му кажете да го направи рекурсивно, той ще започне триенето от поддиректориите нагоре.

rmdir [директория]

Изтрива директория, която не съдържа поддиректории.

man [име на команда]

Извежда подробна информация за дадена команда. Например, ако не знаете как да изтриете рекурсивно една директория, изпълнете 'man rm' и ще видите помощната информация.

В първия момент, когато разгледате файловете и директориите на прясно инсталираната си система, оставате с впечатление, че всичко е ужасно хаотично и безпринципно. Сблъсквате се със странни наименования като “usr”, “lib”, “bin”, “var”... А пък в 'usr' има 'local', където също виждаме 'bin'... Всичко това е много странно.

Файловата йерархия в Linux наподобява един корен с множество разклонения. Обикновените файлове могат да имат всевъзможни разширения, а могат да нямат и никакви. От разширенията на файловете не зависи това дали те са изпълними или не. Можете да срещнете много често и “файлове-фантоми”, които заместват съществуващи някъде на друго място файлове. Това са символните връзки, които имат много широко приложение в Unix. Ще ги различите по знака “@” преди името на файла и, разбира се, по нулевия размер, който подсказва, че това всъщност не е самият файл. Бледо подобие на символните връзки са познатите ни shortcuts в Windows, но тези тук притежават много повече възможности и могат да се явяват пълни заместители на действителните файлове или дори цели директории.


<< Кирилицата и кодовите таблици | Siemens mini How-To >>