Полезни съвети (Линукс)

от Уикипедия, свободната енциклопедия

Замяна на текст във файл[редактиране | редактиране на кода]

За да замените текст в много файлове, използвайте

perl -pi -e 's/стар текст/нов текст/' ФАЙЛОВЕ

Ако някой от текстовете съдържа /, поставете \ пред нея.

Пример:

perl -pi -e 's/We use Windows/We use Linux/' *.txt

Ако не е инсталиран пърл, или потребителят предпочита по-прости инструменти, може да се използва sed. Синтаксисът е:

sed -ibak -e 's/uid/'newuser'/g' -e 's/example.com/'newhost'/g' *.conf

Реда по горе ще замени _всички_ низове uid и example.com от файловете в текущата директория, които завършват с разширение .conf .

С опцията -ibak програмката, ще направи резервни копия на файловете, преди да ги промени.

За повече инфо, man sed

Маркиран текст влиза в клипборда[редактиране | редактиране на кода]

Маркираният с мишка текст влиза директно в клипборда и може да бъде вмъкнат с натискане на средния бутон на мишката в X. Ако се пусне конзолния драйвер за мишка gpm може да се направи същото и в конзолата.

Използване на sudo[редактиране | редактиране на кода]

Чрез sudo е възможно да изпълнявате команди, които искат администраторски достъп. За да го конфигурирате, като root изпълнете командата visudo (в редактора vi ще бъде отворен конфигурационния файл на sudo) и добавете реда

%admin ALL=(ALL) ALL

След това създайте групата admin и добавете към нея непривилегирования потребител, с който влизате в системата. С командата

sudo su -

получавате root права с вашата парола. Вече е достатъчно да помните само нея.

Брой на редове в съобщение[редактиране | редактиране на кода]

Ако искате да разберете колко реда има в дадено съобщение/файл :
cat file.txt | wc -l [съкратен синтаксис: wc -l file.txt]: Ще върне броя на редовете във файла file.txt
ps aux | wc -l : Ще върне броя на стартираните процеси.

За да видите броя на думите във файл:
cat file.txt | wc -w [съкратен синтаксис: wc -w file.txt]: Ще върне броя думи във файла
За повече информация man wc

Забележка : wc -l (-l да се чете „малко L“)

deb пакет на Линукс ядро[редактиране | редактиране на кода]

С make-kpkg в Debian GNU/Linux може да се създаде .deb пакет от програмния код на Линукс ядрото.

Пример:

cd /usr/src/linux
make-kpkg --rootcmd fakeroot kernel_image

Псевдоним на команда[редактиране | редактиране на кода]

Направете си псевдоними alias за често използвани функции. Тези редове се поставят в ~/.bashrc за да не се налага да бъдат въвеждани при всяко влизане.

Пример:

alias ll='ls -l'
alias root='sudo su – root'

Показване на ръковоство на команда[редактиране | редактиране на кода]

За да се прочете ръководството на дадена команда под Линукс, се използвай командата

man _ИМЕ_НА_КОМАНДА_

За пример, за преглед на ръководството на командата за копиране cp, се използва

man cp

Разделяне на файл[редактиране | редактиране на кода]

Ако е нужно даден файл да се раздели на малки части, това може да бъде направено с командата split.

За пример разделянето на видео файл от 650 МБ на части от по 200 МБ става след изпълнието на командата

split -b 200m _ИМЕ_НА_ФАЙЛА_.avi

след което в същата директория ще се появят файлове с имена xaa, xab, xac и т.н

За да се залепят файловете, се използва командата cat по следния начин

cat xaa xab xac xad > _НОВ_ФАЙЛ_.avi

За допълнителни опции може да се използва ръководството на командите split и cat.

Показване на всички процеси[редактиране | редактиране на кода]

Ако е нужен преглед на всички стартирани от системата процеси с подробна информация за тях, може да се използва следната команда:

ps auxwww

Ако е нужна информация за определен процес, може да се пренасочи изхода от горната команда към командата grep по следният начин:

ps auxwww | grep -i ТЪРСЕНЕ

Тук ТЪРСЕНЕ може да бъде (най-често) – ИМЕ_НА_ПРОЦЕСА, ЧАСТ_ОТ_ИМЕ_НА_ПРОЦЕСА, ИМЕ_НА_ПОТРЕБИТЕЛЯ, PID_НА_ПРОЦЕСА и т.н., а ключа „-i“ се използва за да не се прави разлика между главни и малки букви.

За повече информация относно тези команди, може да се използва „man grep“ и „man ps“.

Внимателно изтриване[редактиране | редактиране на кода]

За да не се изтрие важна информация по случайност, е добре да се направят следните alias-и

alias rm='rm -i'
alias mv='mv -i'
alias cp='cp -i'

Копиране на големи файлове[редактиране | редактиране на кода]

За да се копира на отдалечен компютър голяма директория с много файлове, вместо scp, се използва:

$ tar cjf – /път/към/нещата | \
ssh pesho@jaska.nowhere.bg \
tar xjf – -C /home/pesho/неща

Обяснение

tar cjf – /път/към/нещата – архивиране и компресиране с bzip2 /път/към/нещата на стандартния изход

| ssh pesho@jaska.nowhere.bg – пускане по конвейера към ssh връзка до jaska.nowhere.bg, където се изпълнява ...

tar xjf – -C /home/pesho/неща) – разархивира и разкомпресира стандартния вход и записва резултата в /home/pesho/неща

Ключът j на tar компресира/декомпресира с bzip2, като по този начин намалява мрежовия трафик. За прехвърляне филми или огромни файлове, по-добре да не се използва – ще се спести малко трафик, но ще се натоварят процесорите на двете машини допълнително.

Предимства на горния подход пред scp -r или tar и после scp

  1. Възможност за прехвърляне файлове > 4GB
  2. Запазване на символните връзки и пр., които се чупят от scp

Бързо стартиране[редактиране | редактиране на кода]

За да подсигурите по бързо и безпроблемно стартиране на системата си, отделете един малък дял за директорията /boot и го монтирайте със следните опции:

ro,noatime,noexec,nosuid,nodev

Източници[редактиране | редактиране на кода]

Linux-Bg.org