Основни SSH команди (хостинг акаунт)

След като сте активирали SSH достъпа до хостинг акаунта, можете да се свържете отдалечено с хостинг сървъра през конзолата (или през PuTTY).

След като се логнете през SSH в хостинг акаунта
След като се логнете през SSH в хостинг акаунта

Командите, които се изпълняват при достъп през SSH са Линукс команди, които имат определен формат и начин на изписване:

command -options arguments

  • command – името на командата;
  • -options – настройка на командата;
  • arguments – условия за командата;

Линукс командите са много на брой, но има няколко основни и най-често използвани, които ще са нужни за работа със съдържанието в хостинг акаунта.

Бележка: От съображения за сигурност, някои системни и административни команди не се поддържат в средата на споделената хостинг услуга и Managed VPS сървърите. Такива команди са за инсталиране на сървърни приложения, за промяна на сървърни настройки и други.

В Блога: Първи срещи със Secure Shell (SSH) | Blog

За всяка от наличните команди можете да намерите описание в специалната помощната страница, която се достъпва в конзолата чрез командата man.

Помощна информация (manual) за определена команда:

man

(manual – ръководство)

В ръководството на всяка команда е описан начинът, по който се използва, допълнителните опции към командата и други.

Например, за да видите помощната страница за командата ls, която се използва за листване на съдържанието в дадена директория, използвайте:

man ls

За да излезете от помощната страница в конзолата, използвайте q.

Работа с директории и файлове

pwd

(print working directory – изписва текущата директория)

Тази команда извежда (принтира в конзолата) директорията, в която се намирате в момента. Когато работите с терминала и смените директориите няколко пъти, може да се загубите. С тази команда ще видите името и пътя на директорията, в която работите в момента. Много е важно да знаете в коя директория се намирате, защото изпълнението на някои команди се случват от мястото, тоест директорията, в която се намирате.

(print working directory - изписва текущата директория)

При първо логване в конзолата ще се намирате в основната директория на хостинг акаунта /home/cpaneluser/.

cd

(change directory – смяна на директория)

За да промените текущата директория, в която се намирате в момента, използвайте командата cd. Например за да достъпите директорията public_html, която е видима в уеб и в която се поставят файловете на сайта изпишете:

cd public_html/

(change directory - смяна на директория)

За улеснение в конзолата ще се изпише името на директорията, в която се намирате в момента.

Ако използвате само cd без допълнителни параметри, автоматично ще преминете в основната директория на хостинг акаунта (/home/cpaneluser/).

cd ..

(връщане в горната директория)

Когато преминавате от директория в директория, можете да използвате пълен път или релативен път до директорията. Например ако се намирате в директория public_html, за да се преместите в поддиректория images, може да използвате релативен път в командата:

cd images

Релативният път започва от директорията, в която се намирате в момента. Докато пълният път започва от основната home директория на акаунта. Например ако се намирате в директория /public_html/images/2018/, за да преминете в директория /home/cpaneluser/directory/subdir/ трябва да използвате пълен път:

cd /home/cpaneluser/directory/subdir/

За да не изписвате пътя на основната home директория, може да използвате символа ~. Така горният път ще изглежда по следния съкратен начин:

cd ~/directory/subdir/

(change directory - смяна на директория)

ls

(list files & directories – списък на файловете и директориите)

За да видите форматиран и пълен списък на съдържанието, към командата може да се добави параметър -l. За да се видят и скритите файлове (с имена, започващи с точка .), може да се прибави и -a. Така командата ще стане:

ls -la

(list files & directories - списък на файловете и директориите)

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

mkdir

(make directory – създаване на нова директория)

С тази команда можете да създадете нова директория. Например mkdir imenadir ще създаде нова директория с име imenadir:

mkdir imenadir

cp

(copy – копиране на файл, директория)

С тази команда можете да копирате файлове и директории. За да копирате един или повече файлове от една директория в друга може да използвате:

cp file1 file2 dirname1/

За да копирате цялото съдържание на една директория в друга:

cp -r dirname1/ dirname2/

  • -r – цялото съдържание в папката ще бъде копирано;

mv

(move – преместване/преименуване на файл, директория)

Командата mv може да се използва за преместване или преименуване на файл, директория. Например за да преместите файл/ове в определена директория може да използвате:

mv filename1 filename2 dirname1/

Файловете filename1 и filename2 ще се преместят в директория dirname2. Ако директорията не съществува, в конзолата ще се получи съобщение за грешка.

За да преименувате файл или директория, новото име не трябва да е съществуващ файл или директория. Например за да преименувате директорията dirname1 на dirname2, dirname2 не трябва да е съществуваща директория:

mv dirname1/ dirname2/

Ако dirname2 е съществуваща директория, то dirname1 ще бъде преместена в нея, вместо да се преименува.

rm

(remove – премахване/изтриване на файл, директория)

Важно: Бъдете много внимателни с командата rm. Веднъж изтрито съдържание с тази команда, няма начин то да се върне, освен от бекъп.

За да изтриете файл, използвайте:

rm filename1

За изтриване на директория:

rm -r dirname1/

Заедно с директорията ще се премахне и цялото ѝ съдържание. Ако добавите и параметъра -f (force) няма да получите запитване за потвърждение, че сте сигурни, че искате да изтриете и системни или защитени файлове.

tar

С tar можете да създавате архиви или да разархивирате архивни файлове. Например за да архивирате директорията dirname1 с цялото й съдържание, използвайте:

tar cvf archivename1.tar dirname1/

  • c – създаване на нов архив;
  • v – показване на списък с файловете, които ще се архивират;
  • f – следващото в командата е името на архива;
tar

Ще се създаде некомпресиран архивен файл archivename1.tar.

За да се приложи и компресия, добавете z към параметрите:

tar cvzf archivename1.tar.gz dirname1/

  • z – пуска архива през gzip;

За да разархивирате архивния файл:

tar xfv archivename1.tar

tar xfvz archivename1.tar.gz

  • x – извлича файловете от архив (разархивира);

zip / unzip

С командата zip можете да компресирате съдържание, файлове, директории или архивен файл. За създаване на компресиран файл, използвайте:

zip -r archivename1 dirname1/

Директорията dirname1 и цялото ѝ съдържание ще бъде копирано и компресирано във файл archivename1.zip.

zip / unzip

За разкомпресиране:

unzip archivename1.zip

И още полезни команди

touch

С тази команда може да се създават нови празни файлове или да се променя датата на модификация на съществуващи.

cat

За да видите съдържанието на даден файл, отпечатано в конзолата, може да използвате командата cat. За да се движите в съдържанието може да използвате скрола на мишката или клашите Shift+PageUp и Shift+PageDown.

less

Когато съдържанието на даден файл е текстово и е прекалено много, вместо cat може да се използва командата less. С нея съдържанието ще се представи по страници, като се навигира с клавишите за стрелка нагоре и надолу. За излизане от файла се използва q.

В зависимост от енкодинга на файла и този използван за конзолата, може да се получи разминаване и някои символи да не се визуализират коректно. Проверете енкодинга на файла, след това проверете с какъв енкодинг работи конзолата, с командата:

echo $LANG

И задайте подходящ енкодинг с командата:

export LANG="en_US.UTF-8"

  • en_US.UTF-8 – избраният енкодинг, който отговаря на този на файла;

grep

(търсене във файл)

С тази команда можете да потърсите определена дума (стринг) в съдържанието на файл. Например:

grep -i "word" filename1

В резултатите ще се покаже и редът, на който се намира откритата дума.

Параметърът -i към командата указва, че регистърът на буквите не е от значение.

За търсене във всички файлове, рекурсивно:

grep -r "word" *

find

(търсене на файл)

С find можете да потърсите определени файлове по име, например файл с име filename.txt:

find -name filename.txt | more

  • -name filename.txt – име на файла;
  • | more – да покаже списъка с резултати в страници, в случай че очаквате намерените файлове да много на брой;

Като резултат ще се покажат всички файлове с това име, които са намерени в текущата директория и нейните поддиректории.

Ако използвате -iname, тогава регистърът на буквите няма да е от значение (малки и главни букви).

Командата find може да се комбинира например с командата grep. За да намерите всички файлове с окончание в името си .php, в които след това да се потърси определена дума в съдържанието им, може да се използва:

find . -type f -name "*.php" -exec grep -H "word" {} \;

  • -type f – указва, че се търсят файлове;
  • -name "*.php" – но само такива, чието име завършва с .php;
  • -exec grep – изпълнява следващата команда върху намерените файлове;
  • -H "word" {} \; – какво се търси във файла;

Ако искате списъкът с резултати да се запише във файл например log.txt, който след това можете да проверите, добавете в края на командата > log.txt ("word" {} \; > file.txt).


Вижте още:

Обновена: 13.06.2023

Беше ли Ви полезна тази статия?

Вижте още