Как написать эффективный скрипт продаж: алгоритм действий и детали. Учимся писать скрипты правильно

Правила написания скриптов

Прежде всего надо рассмотреть тег . Этот тег служит для вставки скриптов в HTML-код страницы. Его формат:

. . . Текст скрипта

Текст скрипта помещаетс внутрь тега

Атрибут language позволяет указать, на каком языке программирования написан скрипт.

Значение по умолчанию - "JavaScript".

Internet Explorer поддерживается скрипты, написанные на языке VBScript, которому соответствует значение атрибута "VBScript".

Navigator позволяет задавать версию интерпретатора JavaScript:

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

В следующей таблице приведены версии интерпретатора JavaScript и соответствие их разным версиям Navigator:

Второй атрибут src служит для задания адреса файла, содержащего скрипт.

В этом случае обычно парный тег превращается в одинарный:

js - стандартное расширение для JavaScript-файлов.

Но что случиться, если Web-обозреватель не поддерживает скрипты? (Например, это слишком старая версия программы, или пользователь отключил поддержку скриптов в настройках безопасности.) Web-обозреватель проигнорирует тег и выведет на экран текст скрипта.

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

Однако некоторые версии Navigator в этом случае "не видят" скрипта, хотя, согласно техническим руководствам самой Netscape, должны. Так что этот совет применим только для Internet Explorer.

В качестве альтернативы вы можете использовать тег .

Этот тег поддерживается Internet Explorer и Navigator:

. . . Текст, отображаемый, если Web-обозреватель неподдерживает скрипты

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

Из книги Linux From Scratch автора Бикманс Герард

Глава 7. Конфигурация загрузочных скриптов Введение Эта глава описывает конфигурацию скриптов, о которых было рассказано в 6 главе. Большинство из тех скриптов будут работать и без дополнительных настроек, но некоторые требуют дополнительной конфигурации, т.к. они

Из книги Создание электронных книг в формате FictionBook 2.1: практическое руководство автора Кондратович Михаил Иосифович

Что надо для загрузки loadkeys скриптов? Если вы решили вкомпилить вашу раскладку (keymap) напрямую в ядро, вернитесь в конец 6-й главы, где вам четко сказано, что не требуется его (скрипт) запускать, если вы уже вкомпилили раскладку (keymap) в ядро. Но вы можете запустить крипт если

Из книги HTML 5, CSS 3 и Web 2.0. Разработка современных Web-сайтов. автора Дронов Владимир

Конфигурация скриптов localnet. Частью установки скриптов, относящихся к localnet, является установка имени компьютера. Это требуется для правильной настройки /etc/sysconfig/network.Создайте файл /etc/sysconfig/network file и введите имя компьютера запустив следующее:echo «HOSTNAME=lfs» > /etc/sysconfig/network«lfs»

Из книги Компьютерные советы (сборник статей) автора Автор неизвестен

Настройка сетевых скриптов Эта часть нужна для настройки сетевой карты.Если у вас нет сетевой карты, вам не требуется создавать или настраивать файлы, относящиеся к сетевой карте. В этом случае удалите симлинк network из всех директорий (/etc/rc.d/rc*.d)Настройка шлюза по

Из книги HTML 5, CSS 3 и Web 2.0. Разработка современных Web-сайтов автора Дронов Владимир

§ 4.6 Использование скриптов Автор FB Editor предусмотрел расширение его возможностей при помощи Java Script.Вызываются они из меню ToolsScripts[скрипт].Первые девять скриптов можно вызывать клавишами Ctrl+1…9.Документации, разумеется, не предусмотрено никакой. Во всем придется

Из книги Ководство автора Лебедев Артём Андреевич Из книги Краткое введение в программирование на Bash автора Родригес Гарольд Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

Правила написания выражений В процессе чтения этой главы мы изучили множество выражений JavaScript. Но так и не узнали, по каким правилам они пишутся. Настала пора восполнить пробел в наших знаниях.- Между операндами, операторами, вызовами функций и методов и ключевыми

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

§ 163. Правила написания почтовых адресов 21 марта 2010Раньше реквизиты адреса принято было писать от большего к меньшему: страна, индекс, город, улица, дом, квартира, Васе Пупкину. В мире принята другая система составления адреса, потому что в мире отправляют много почты и

Из книги Написание скриптов для Blender 2.49 автора Anders Michel

Так все-таки программирование (programming) или написание скриптов (scripting)? Новичков в программировании, как правило, озадачивает разница между, собственно, программированием и языками скриптов. Программы, написанные на каких-то языках программирования, обычно гораздо более

Из книги автора

Что нужно знать для написания своих скриптов? Для этого необходимо знание основных команд Linux. Например, вы должны знать, как копировать, перемещать и создавать новые файлы. Обязательно умение использовать какой-либо текстовый редактор. Существуют три основных текстовых

Из книги автора

Переносимость ваших скриптов на bash При написании ваших собственных скриптов важно делать это так, чтобы они оставались переносимыми. Термин «переносимость» означает, что если ваш скрипт работает под Linux, то он должен работать в другой Unix-системе с малыми изменениями или

Из книги автора

Инструменты для написания фильтров API Firebird содержит группу макрофункций, начинающихся с isc_biob_fiiter_, которые являются "инструментом программиста" для написания фильтров BLOB. Документы API Guide и Embedded SQL Guide из набора документов Borland по InterBase версии 6 бета имеют разделы по

Из книги автора

Создание базы данных Employee с помощью скриптов После выполнения инсталляции Firebird база данных Employee будет создана и будет сделана ее резервная копия из скриптов. Скрипты empddl.sql (который создает метаданные) и empdll.sql (который заполняет базу данных) доступны в области Downloads на

Из книги автора

Использование скриптов в клиентских приложениях базы данных InterBase Время от времени у любого программиста появляется желание вынести часть логики своих приложений на уровень, который можно было бы изменять без перекомпиляции приложения. А для определенного класса задач

Хорошие скрипты продаж на 80% увеличивают вероятность успешного закрытия сделки, а следствие . Рассказываем об алгоритме их построения, приводим примеры результативных скриптов и показываем, какое it-решение упростит процесс их использования, тестирования, изменения и обучения менеджеров.

Любая продажа – это общение с клиентом. И этот процесс обязательно должен быть регламентирован, протестирован и желательно автоматизирован. Для отличных продаж вам нужна схема разговора — последовательность вопросов/предложений менеджера и возможных вариантов ответа клиентов.

Зачем нужны скрипты продаж:

  • Чтобы достичь поставленной цели – продать товар или услугу.
  • Чтобы увеличить разговора в сделку
  • Чтобы накапливать опыт в общении с клиентами из вашей сферы
  • Чтобы быть готовым ответить на любые вопросы клиента
  • Чтобы продажи не зависели от настроения, навыков конкретного менеджера
  • Чтобы ускорить процесс обучения новых менеджеров
  • Чтобы контролировать работу менеджеров
  • Алгоритм создания скрипта продаж

    Шаг 1. Подготовка

    Цель звонка . В зависимости от того, что вы продаете, решите, какого действия или реакции должен добиться менеджер от клиента. Не все товары и услуги продаются сразу и по телефону. В качестве цели вы можете добиться визита в ваш офис, чтобы более подробно раскрыть преимущества или познакомить с командой. Вы можете пригласить на экскурсию по объектам, если продаете недвижимость. Можно позвать клиента на ваш вебинар или конференцию. Или для начала вам будет достаточно, чтобы он оставил вам электронную почту и номер мобильного телефона.

    Портрет клиента. Определите, кто ваша целевая аудитория: мужчины/женщины, возраст, доход, сфера деятельность, вовлеченность в социальные сети и т.д. Далее оцените, это лицо принимающее решение в компании или нет, можно ли дозвониться клиенту напрямую или только через секретаря.

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

    Знание продукта . Очень важно четко представлять, какой продукт вы продаете, какие проблемы он решает, какие есть преимущества, чем отличается от конкурентов, почему ваше предложение уникально, какие виды продукта бывают, насколько можно адаптировать его под каждого клиента.

    Например, вы продаете сразу несколько объектов недвижимости или квартиры/дома с разной планировкой. Ваши менеджеры должны четко ориентироваться, какой из объектов может лучше подойти для конкретного покупателя. Выяснив, состав его семьи, возраст детей, пожелание к инфраструктуре, близости к центру города, он должен знать, какой наилучший вариант нужно предложить. И организовать просмотр объекта, который максимально отвечает требованиям клиента.

    Свобода действий. Определите, насколько гибким может быть ваш скрипт продаж. Есть бизнесы с сильными стандартами работы (банки, страховые компании, телекоммуникационные компании). Их менеджеры, как правило, предлагают конкретную услугу. Скрипт их разговора не позволяет сделать шаг вправо или влево.

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

    Шаг 2. Составление скрипта

    Подход к написанию скрипта продаж.

    Кто и как может создать скрипт:

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

    Менеджер. Можно попросить лучшего менеджера составить скрипт продаж, а потом уже руководитель отдела продаж исправит слабые места, поможет усилить важные моменты.

    Текущий опыт. Составьте скрипт продаж из накопленного опыта в вашей компании. Попросите менеджера обзвонить несколько десятков клиентов, запишите звонки. Потом прослушайте их и выпишите фразы, которые помогли двигаться к вашей цели. Особое внимание уделите стоп-словам – тем, которые лучше не употреблять. И на основе удачных фраз сконструируйте скрипт.

    Структура скрипта продаж. Она должна строиться по классической схеме продаж: представление – выяснение потребности – презентация продукта – – завершение сделки.

    Какие фразы помогают начать разговор:

    • Вы оставили заявку на нашем сайте в 15.00
    • Сейчас вы находитесь на странице с таким-то нашим продуктом. Давайте помогу во всем разобраться
    • Я обещал вам позвонить, когда вы откроете мое коммерческое предложение. Вижу, что открыли, и вот звоню (читайте, как составить коммерческое предложение с wow-эффектом)
    • Мне рекомендовал позвонить вам Иванов Иван Иванович
    • Вы оставили свои контакты на нашем стенде на такой-то выставке

    Какие фразы помогают выяснить потребности:

    • Что для вас важно?
    • Что для вас неприемлемо?
    • Какие ваши предпочтения?
    • Выберите из перечисленных мною вариант, который бы вас устроили?
    • Кто будет принимать окончательное решение? Нужно ли вам с кем- то посоветоваться?
    • На какой бюджет вы рассчитываете?
    • Если мы поступим так, вам будет удобно?

    Какие фразы помогают продвинуться к завершению сделки:

    • Что нужно сделать, чтобы наша сделка состоялась?
    • Какие условия, помогли бы вам сейчас принять решение?
    • Какой пункт договора нужно исключить, чтобы вы его подписали?
    • Какие условия оплаты вы бы хотели получить, чтобы сейчас принять решение?
    • Давайте договоримся о следующем звонке/встрече?

    Нужны ли эмоции. Безусловно! Человек по телефону должны ощущать ваше отношение к нему. Для этого можно использовать слова чувств: «Мы рады вас слышать», «Это отличное предложение», «Мне кажется, вам нравится мое предложение», «Вы абсолютно правы». По сути во время разговора менеджер должен улыбаться и чувствовать собеседника.

    Длина скрипта продаж. Это зависит от цели разговора. Если ваша задача продать, то вы можете общаться пока не достигнете цели. Если ваша цель — промежуточный этап (назначение встречи), то не занимайте у потенциального клиента более 5 минут.

    Шаг 3. Тестирование скрипта

    Вы написали скрипт продаж, теперь его надо проверить и скорректировать. Сначала сценарий разговора можно проверить на самих менеджерах, потом на небольших клиентах. «Шлифовка» скрипта – это большой и трудоемкий процесс. Он может занять до 1,5 месяцев.

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

  • Разговаривают ли менеджеры по скрипту
  • Движется ли разговор к поставленной цели по скрипту
  • Все ли варианты ответов/возражений клиента учтены в скрипте
  • Удалось ли удержать внимание клиента
  • Какие фразы или слова привели к срыву переговоров
  • После этого исправляйте и улучшайте скрипт. Помните, что идеального скрипта не бывает. Любая новая фраза может улучшать или ухудшать конверсию. Работайте над скриптом, а скрипт будет работать над ростом ваших продаж.

    Чтобы увеличить эффективность , вы можете использовать сервис HyperScript. Он поможет:

  • Создавать и редактировать ваш скрипт в удобном визуальном редакторе, а не печатать на бумаге для каждого менеджера
  • Схема продаж

    2. Быстро распространять изменения. Ваши менеджеры всегда будут видеть актуальную версию скрипта

    Актуальная версия скрипта продаж

    3. Предоставить сотрудникам удобный интерфейс работы со скриптом в режиме реального времени – на каждый ответ клиента автоматически отображается то, что нужно говорить менеджеру.

    Быстрая корректировка скрипта

    4. Автоматически измерять и сравнивать конверсию скриптов.

    5. Автоматически измерять и сравнивать конверсию операторов.

    Конверсия

    6. Определять, на каком шаге скрипта обрывается больше всего разговоров

    Как писать скрипты для операционной системы, сайтов или же просто игр? Ответ на этот, поверьте, легкий вопрос и будет рассмотрен в рамках данной статьи.

    Общая информация

    Очень желательно, чтобы были хотя бы минимальные знания о программировании. Но если что-то покажется непонятным, то статья-другая поможет заполнить пробел. Первоначально давайте определим, что же собой представляет скрипт. Так называют алгоритм, написанный определёнными языками программирования, что хранится на компьютере человека и может взаимодействовать с определёнными файлами, программами вроде браузеров и системными настройками. Это всё позволяет значительно дополнять стандартные возможности, создавать автоматизированных помощников, что будут брать на себя часть работы.

    Начинаем работать с браузеров

    Это, пожалуй, одно из самых лёгких занятий. Если мы пишем скрипты на JavaScript, то для этого достаточно обычного блокнота и знания этого языка программирования. Правда, есть тут и недостатки. Так, каждый человек, у которого есть всё тот же "Блокнот", сможет посмотреть, что же собой представляет скрипт. И если у него будут плохие намерения, а в коде уязвимость - то могут возникнуть проблемы. Отвечая на вопрос о том, как научиться писать скрипты на JavaScript, следует отметить, что для этого достаточно изучить данный язык программирования. Для того чтобы создавать лучшие и более сложные программы, можно воспользоваться различными библиотеками. Но для них требуются соответствующие расширения веб-обозревателей. И при смене компьютерной техники придётся проводить дополнительные настройки. А при использовании сторонних разработок необходимо удостовериться, что скрипт не будет отсылать пользовательские данные на сторонние сервисы. Следует отметить, что каждый браузер имеет свои определённые ограничения. Но в целом с их помощью можно делать практически всё что угодно. Зачем же их пишут в таких случаях? Они нужны тогда, когда следует автоматизировать деятельность человека.

    Работаем с операционной системой Windows

    Допустим, нам необходимо поменять конфигурацию компьютера. Для этого существует широчайший набор графических средств, но всё они, увы, не охватывают. Поэтому часто приходится создавать системные скрипты. Они имеют расширение.bat. Каждый человек, который более-менее длительное время работает за компьютером, уже встречался с такими файлами. Но вот как писать скрипты для Windows? Для этого нам пригодится всё тот же "Блокнот". Сначала создаём новый текстовый файл. В нём необходимо записать системные команды. После этого необходимо изменить расширение файла на.bat. И остаётся только запустить эту разработку. Если всё правильно, то команды успешно будут выполнены, что и можно лицезреть. Но в случае ошибок или неграмотного написания кода в лучшем случае ничего не произойдёт. Поэтому лучше разбираться в том, что записываешь. Просто брать где-то код и бездумно его вставлять категорически не рекомендуется! Это может привести к значительным проблемам в работе операционной системы. И ещё повезёт, если такие опасные действия были сделаны с гостевого аккаунта. Ведь команда от администратора может превратить компьютер в "кирпич".

    А что с "Линуксом"?

    Следует помнить, что "Виндовс" - это не единственная операционная система. Есть ещё и "Линукс", причем довольно популярный. Как писать скрипты в этой операционной системе? Они создаются с помощью оболочки - специального командного интерпретатора, который является интерфейсом между человеком и ядром операционной системы. В "Линуксе" скрипты, по сути, это просто файл, в котором перечисляются системные команды. Это просто и одновременно удобно. Но оболочке нужно знать, как же такой файл следует обрабатывать. По умолчанию она просто читает. А если нужно выполнить, то используется конструкция «#!», которую необходимо поставить перед командой. Все скрипты имеют расширение.sh. Следует отметить, что с их помощью можно делать довольно много сложных вещей. Например, резервное копирование файлов. В целом вариантов использования чрезвычайно много.

    Учимся писать скрипты

    Итак, первоначально необходимо определиться со средой, где мы будем набирать код. Почти всегда для этого достаточно одного "Блокнота". Но в нём не очень удобно отображать строение конструкций, к тому же не подсвечиваются операторы и другие элементы. Поэтому в качестве достойной альтернативы можно предложить программу Notepad++. Для тех, кто знает английский язык, не так сложно перевести, что это тоже "Блокнот". Но с расширенными возможностями. Эта небольшая, но очень приятная разработка ориентирована в первую очередь на программистов. В ней можно включить настройку отображения почти всего, что только есть. Присутствует удобный инструмент отображения кода и множество других хоть и мелких, но приятных вещиц, которые сделают процесс написания более комфортным. В целом же на вопрос "где писать скрипты" дано множество различных ответов, каждый из которых предлагает свою изюминку. Есть и очень навороченные среды, с эмуляторами и множеством инструментов отладки. Выбирай, что душе пожелается. После этого необходимо позаботиться о наличии знаний. В качестве базиса подойдёт справка по языку программирования или же команд операционной системы. Для более продвинутого изучения можно прочитать несколько книг, в которых объясняются особенности машинной логики и обработки кода.

    Сервисы обучения в реальном времени

    Если интересует, как научиться писать скрипты, то не следует сбрасывать со счетов и возможность обучения с помощью информационных образовательных технологий. Как приблизительно выглядит такая «кузница программистов»? По программе, составленной согласно мнению опытных разработчиков, новичка ведут от самого лёгкого к сложным моментам. Так, первоначально может изучаться динамическое обновление данных, чтобы в последующем перейти к созданию сокет-серверов. И человек проходит обучение не спеша, поэтапно, усваивая максимальное количество данных. Поэтому, если возникнут сложности, можно обратиться за помощью к ним. Не факт, что первый попавшийся удовлетворит все потребности, но тогда необходимо будет просто попробовать что-то иное.

    Зачем же изучать?

    Многих интересует, как писать скрипты для игр. Что ж, это не очень сложно, но и не единственное применение подобной возможности. Но давайте же рассмотрим на примере игры. Допустим, человеку нравится играть на определённом сайте в какое-то развлечение. Но оно, увы, предусматривает, что необходимо или вкладывать свои деньги, или же долго и монотонно выполнять определённые действия. И если был выбран второй путь, то скрипты - это именно то, что здесь нужно. Подобное может быть использовано и в стационарных играх на компьютере. Там есть персонажи под управлением искусственного интеллекта, и чтобы сразиться с ним, можно создать свою версию ИИ, устроив таким образом битву компьютера с самим собой (и для более лёгкого прохождения). Но скрипты могут быть успешно использованы не только в играх. Допустим, что есть сайт серьёзной компании. Важным аспектом является максимальная поддержка коммуникации с клиентами. И для этого в виде скрипта добавляется небольшая форма, с помощью которой можно получить консультацию специалиста в онлайн-режиме. Возможностей применения много!

    Заключение

    Увы, но в рамках статьи очень сложно передать, как правильно писать скрипты. Можно, конечно, использовать общие фразы о том, что код должен занимать меньше места, быть оптимальным и много чего другого, но действительно понять это можно будет только на практике. Ведь только опыт и поиск оптимальных решений могут помочь в реализации программ таким образом, чтобы они с минимальными трудозатратами выполняли свои «обязанности». В программировании вообще, а не только в написании скриптов, очень много зависит от практики! Поэтому нужно постоянно учиться, совершенствоваться и думать, как же реализовать поставленную задачу наилучшим образом.


    Прежде всего, ответим на вопрос: что же такое PHP? PHP - это система разработки скриптов, включающая в себя CGI - интерфейс, интерпретатор языка и набор функций для доступа к базам данных и различным объектам WWW. По личному мнению автора этой статьи, на данный момент PHP является наиболее удобным и мощным средством разработки приложений WWW и интерфесов к БД в Интернет.

    2.1 . Обработка строк

    Работа со строками в php гораздо богаче, чем в С. Кроме того, что существуют практически все стандартные функции языка С, наличиствует множество дополнительных функций и возможностей, которые как ориентированы на web, так и просто облегчают работу. В частности конкатенация строк осуществляется следующим оператором: $result_str=$first_str . $second_str;
    В качестве примеров полезных для работы в web функций могут служить функции htmlspecialchars() , преобразующая в строке символы типа & в последовательность & или функция urlencode(string str), преобразующую символы русского алфавита в последовательность %XX, где ХХ - шестнадцатеричный код символа. Также весьма интересны функции работы с регулярными выражениями, например $str=ereg_replace("/usr/local/([^/]*)/filename", "\\1","/usr/local/dirname/filename"); даст нам строку $str="dirname". Или например функция explode , лично меня очень порадовшая: данная функция позволяет преобразовать строку в массив значений, например для формирования следующего элемента выбора

    Понедельник Вторник Среда Четверг Пятница Суббота Воскресенье

    был использован следующий код:






    2.2 . Работа с файлами и процессами

    Работа с файлами в PHP практически ничем не отличается от работы с файлами в С, те-же самые функции работы с потоками или с блоковыми файлами, fopen, fclose, fread, fgets, fputs, fwrite, но есть одна маленькая, но очень приятная возможность работать с файлами по их URL, например возможны следующие конструкты:
    $fp = fopen("http://www.soft.ru/", "r");
    $fp = fopen("ftp://www.soft.ru/", "r");
    И, одной из самых больших прелестей PHP, по моему мнению является возможность использовать другие программы, например для получения списка текущей директории использовать стандартную команду ls , или отправлять почту с помощью sendmail . Это достигается с помощью того, что php позволяет создать процесс, и работать с его стандартным вводом или стандартным выводом как с обычным потоком. (команда popen , например $fp=popen("/bin/ls -l","r"); ).

    2.3 . Работа с базами данных

    В системе PHP работа с БД осуществляется в основном путем работы с различными SQL-серверами, причем SQL-сервер в любом случае рассматривается как удаленный, то есть создается сетевое соединение. Благодаря этому возможно открывать из одного скрипта либо несколько пользовательских сессий, либо работать с различными SQL-серверами. После установки соединения с сервером, выбирается рабочая база данных, после чего можно отправлять и обратывать запросы (так как SQL является клиент-серверной архитектурой, любая работа с данными осуществляется с помощью запросов к SQL-серверу на получение или изменение данных). При выполнении запроса создается некий объект, в котором хранится результат выполнения запроса, после чего можно получать отдельные ряды, путем выполнения специальных функций. Если вы когда-нибудь работали с SQL - вы очень быстро разберетесь с использованием функций работы БД в PHP.

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

    А сформирована дання таблица была следующим php - кодом:




    Название фирмы
    Телефон


    $sock=msql_connect ("localhost"); //Соединяемся с SQL - сервером
    msql_select_db("test",$sock); //Выбираем БД
    $R=msql_query("select * from db",$sock); //Делаем запрос
    $T=msql_fetch_array($R); //Получаем первый ряд из результата выполнения запроса
    while (is_array($T)) { //Пока есть ряды в запросе (т.е. $T - массив)








    Использование PHP

    Итак, постепенно мы приходим к следующему выводу: использование PHP целесообразно при создании часто обновляемых либо громоздких в написании программ, скорость выполнения для которых не является критическим параметром (имеется в виду, что если разница между временем выполнения скрипта на С и скрипта на PHP составляет 10-20%, то вполне можно предпочесть скорость разработки скорости выполнения) и необходимо быстрое создание полнофункционального приложения. (если интересно мое личное мнение то кроме PHP я использую только C, и то, очень редко.)

    Любой начинающий системный администратор Linux рано или поздно сталкивается с таким понятием, как “скрипт ”, будь то один из загрузочных скриптов вроде /etc/rc.d/rc или написанный разработчиком ПО скрипт конфигурирования configure . В данной статье я постараюсь показать, что написание скриптов на shell не является чем-то из ряда вон выходящим и вполне под силу даже новичку в мире Linux.

    Начнем с того, что разберем, что же скрывается за английскими терминами shell и скрипт . Shell , или оболочка, как этот термин иногда переводят - это командный интерпретатор, интерфейс между пользователем и операционной системой, ее ядром. Но, кроме этого, это еще и мощный язык программирования и написания сценариев. Он содержит свои служебные слова и управляющие конструкции и позволяет писать на нем программы. Такая программа на языке сценариев, называемая скриптом , может объединять в себе системные вызовы и команды операционной системы, а также внешние утилиты, создавая мощный инструмент для системного администрирования.

    Одной из задач системного администрирования является резервное копирование важной информации. Поэтому давайте рассмотрим пример скрипта, реализующего back-up информации.

    Начало начал

    Итак, прежде всего, нам необходимо разобраться в структуре скрипта. Она не представляет собой ничего сложного. По большому счету, простейший скрипт - просто перечисление системных команд. Например:

    Echo This is just example
    whoami
    uname -a

    Эти команды объединены в одном файле. Но shell должен знать, что он должен этот файл обработать, а не просто прочесть его содержимое. Для этого служит специальная конструкция: #!

    Эта конструкция называется «sha-bang ». Вообще-то, # задает комментарий, но в данном случает sha-bang означает, что после нее пойдет путь к обработчику скрипта. Напрмер:

    #!/bin/bash
    #!/bin/sh
    #!/usr/bin/perl

    Мы остановимся на Bash, Bourne-Again shell. Это shell устанавливается по умолчанию практически во всех Linux-системах, и /bin/sh ссылается на него. Об окончании скрипта говорит служебное слово exit.

    Вооружившись этими знаниями, напишем наш первый скрипт:

    #!/bin/bash
    echo Простой скрипт # Команда echo выводит сообщение на экран
    echo Вы:
    whoami # whoami показывает имя зарегистрированного пользователя
    echo Ваша система стартовала
    uptime # uptime показывает время включения машины
    echo Сегодня
    date # date показывает текущую дату и время
    echo Пока все
    exit

    Сохраним этот файл под именем tutor1.sh. Выполним команду чтобы сделать скрипт исполняемым.

    Chmod +rx tutor1.sh

    Результатом выполнения скрипта будет:

    Voland@superstar:~/Doc/Open Source$ ./tutor1.sh
    Простой скрипт
    Вы:
    voland
    Ваша система стартовала
    14:38:46 up 1:48, 2 users, load average: 0.47, 0.43, 0.41
    Сегодня
    Вск Фев 26 14:38:46 MSK 2006
    Пока все

    Переходим к более серьезному.

    Теперь, когда мы научились писать простейшие скрипты, самое время перейти к серьезным вещам: написанию скрипта для резервного копирования.

    Перво-наперво, необходимо определить - резервную копию чего мы будем делать. Поэтому наш скрипт должен уметь работать с командной строкой. Аргументы командной строки задаются после имени скрипта через пробел: somescript arg1 arg2 arg3. Скрипт воспринимает аргументы по номерам их следования, поэтому мы будем использовать конструкции вида $номер_аргумента, т.е. $1, $2, $3. $ - это символ подстановки, который нам понадобится и при работе с переменными. Переменные в скрипте задаются в виде имя_переменной=значение. Мы будем использовать переменные MAXPARAMS для определения максимального количества параметров командной строки, BACKUPFILE для задания имени архива, BACKUPDIR для папки, резервную копию которой мы будем делать и ARCHIVEDIR для папки, куды мы поместим архив. Самой главной частью скрипта будут команды поиска и архивации всех найденных файлов и папок в указанной:

    Find . -type f -print0 | xargs -0 tar rvf "$archive.tar" > /dev/null
    gzip $archive.tar

    Давайте разберемся, что же эти команды делают. find ищет в текущем каталоге (об этом говорит первый аргумент ".") все файлы и выдает полный путь к ним (print0). Эти пути перенаправляюся команде tar, которая собирает все файлы в один. Затем командой gzip мы архивируем получившийся tar-файл. Команда > /dev/null удобна, если вы архивируете большое количество файлов. В этом случае их имена и полный путь к ним не выводятся на консоль.

    Следующий шаг должен предусмотреть подсказки пользователю как пользоваться скриптом, если он допустит какие-то ошибки.

    Например, эта конструкция

    If [ $# -lt "$MAXPARAMS" ];
    then
    echo

    echo
    exit 0
    fi

    подскажет, что пользователь указал недостаточное количество аргументов командной строки. If [условие]...fi задает условную конструкцию. $# -lt "$MAXPARAMS" проверяет введенное количество параметров и если это число окажется меньше MAXPARAMS, то пользователю будет выдано сообщение об ошибочном вводе. Exit 0 заставит скрипт прекратить работу без указания кода ошибки. Аналогично проверяется превышение допустимого числа параметров, только вместо ls (less then - меньше, чем), необходимо указать gt (greater then - больше, чем). Теперь, когда основные моменты скрипта разъяснены, можно переходить к полной его версии:

    #!/bin/bash
    # Описание:
    #+ Делает резервную копию всех файлов в указанной директории
    #+ в "tarball" (архив tar.gz).
    #+ Использование:
    #+ sh backup.sh имя_архива папка-источник папка-назначение
    #+

    # Максимальное количество параметров командной строки
    MAXPARAMS=3

    if [ $# -lt "$MAXPARAMS" ];
    then
    echo
    echo "Использование: sh `basename $0` имя_архива папка-источник папка-назначение"
    echo
    exit 0
    fi

    if [ $# -gt "$MAXPARAMS" ];
    then
    echo
    echo "Для этого скрипта нужно только $MAXPARAMS аргументов командной строки!"
    echo
    exit 0
    fi

    # Переменные, которые мы используем в скрипте
    BACKUPFILE=$1-backup-$(date +%m-%d-%Y)
    archive=$BACKUPFILE
    BACKUPDIR=$2
    ARCHIVEDIR=$3

    # Проверяем, есть ли папка-источник и папка-назначение
    if [ ! -e $BACKUPDIR ];
    then
    echo
    echo "\"$BACKUPDIR\" не существует!"
    echo
    exit 0
    fi

    if [ ! -e $ARCHIVEDIR ];
    then
    echo
    echo "\"$ARCHIVEDIR\" не существует, создаем..."
    mkdir $ARCHIVEDIR
    echo "Готово."
    fi

    # Проверяем, есть ли архивы в источнике и назначении.
    cd $ARCHIVEDIR
    if [ -e $archive.tar.gz ];
    then rm $archive.tar.gz
    fi

    cd $BACKUPDIR
    if [ -e $archive.tar.gz ];
    then rm $archive.tar.gz
    fi

    # Главная часть скрипта...
    echo "Делаем резервную копию \"$BACKUPDIR\" в файл \"$archive.tar.gz\"..."
    find . -type f -print0 | xargs -0 tar rvf "$archive.tar" > /dev/null
    gzip $archive.tar
    echo "\"$BACKUPDIR\" была успешно заархивирована в файл \"$archive.tar.gz\"."

    # Перемещаем архив в папку ARCHIVEDIR
    echo "Перемещаем архив \"$archive.tar.gz\" в папку \"$ARCHIVEDIR\"."
    mv $archive.tar.gz $ARCHIVEDIR/$archive.tar.gz
    echo "Готово."

    Надеюсь, основные моменты я прокомментировал достаточно подробно. Если у вас возникли какие-либо вопросы, то вы можете связаться со мной по адресу [email protected] Рекомендую также замечательную книгу Advanced Bash-Scripting Guide Менделя Купера (Mendel Cooper), которая очень помогла мне в свое время, когда я только знакомился со скриптами. Удачного программирования.

    P.S. Большое спасибо mar за ее замечания и советы.



    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: