Главная страница
Навигация по странице:

  • Примечание 1

  • Примечание 2

  • Знакомстов сс ОС UNIX. ЛР №1. Лабораторная работа по дисциплине Вычислительные машины, системы и сети


    Скачать 28.59 Kb.
    НазваниеЛабораторная работа по дисциплине Вычислительные машины, системы и сети
    АнкорЗнакомстов сс ОС UNIX
    Дата21.04.2022
    Размер28.59 Kb.
    Формат файлаdocx
    Имя файлаЛР №1.docx
    ТипЛабораторная работа
    #488406


    Министерство науки и высшего образования Российской Федерации

    Федеральное государственное бюджетное образовательное

    учреждение высшего образования


    ПЕРВОНАЧАЛЬНОЕ ЗНАКОМСТВО С UNIX

    Лабораторная работа по дисциплине

    «Вычислительные машины, системы и сети»





    Выполнил:

    Студент гр._ ________

    (номер группы)

    _______________ /_ ________/

    (подпись) И. О. Фамилия

    «___»__________20__г.

    (дата)



    Проверил:

    ______________________________

    (должность, ученая степень, звание)

    ______________ /____________________/

    (подпись) И. О. Фамилия

    «____»_______________20____г.

    (дата)



    .

    Задание
    Для успешной сдачи работы требуется выполнить наизусть следующие операции:

    1. создать два трехуровневых поддерева каталогов и поместить в один из каталогов четыре текстовых файла, два из которых имеют в своем имени одинаковую символьную последовательность, называемую далее «словом»;

    2. с помощью ed отредактировать текстовый файл;

    3. вывести файл на экран;

    4. выполнить добавление текста в начало, в середину и в конец файла;

    5. вывести файл на экран;

    6. произвести переименование файла;

    7. выполнить копирование файла (исходный файл и файл-копия должны располагаться в разных каталогах);

    8. поместить в любой другой каталог скрипт, имеющий два входных параметра: имя каталога и набор символов. Скрипт выполняет действия:

      • вывод на экран перечня файлов, «дочерних» к заданному каталогу, которые имеют в своем имени заданный набор символов;

      • уничтожение всех остальных файлов заданного каталога;

      • любые другие действия (по вашему желанию);

    9. создать свой инициализационный скрипт, выполняющий действия:

      • здоровается;

      • «переделывает» приглашения shell;

      • запускает вложенный скрипт, созданный в (8), задав ему в качестве параметров каталог и «слово» из (1);

      • любые другие действия (по вашему желанию);

    10. выйти из UNIX, а затем войти вновь с целью демонстрации результатов выполнения инициализационного скрипта.

    Примечание 1. При выполнении задания разрешается использовать те средства shell, которые рассмотрены в данной работе. В частности нельзя применять управляющие операторы (рассматриваются в следующей работе).

    Примечание 2. Для избирательного удаления файлов в (8) рекомендуется использовать команду rm с флагом -i, предварительно установив права доступа к файлам. При этом для обеспечения автоматического выполнения rm ее стандартный ввод должен быть переключен на вспомогательный файл, содержащий любой символ кроме «y».

    Решение


    1. Создаём два поддерева каталогов в текущем каталоге:


    $ mkdir a0 b0

    $ mkdir a0/a1 b0/b1

    $ mkdir a0/a1/a2 b0/b1/b2
    Создаём 4 пустых текстовых файла в каталоге b1:
    $ сd b0/b1

    $ cat > file0



    $ cat > abc



    $ cat > def



    $ cat > file1




    1. Отредактируем файл file0 с помощью текстового редактора ed:


    $ ed file0

    a

    This is a test to see if I am

    entering text in the file “file0”.

    Once I have completed it I shall find

    that I have created 4 new lines of data

    .


    1. Выведем текст файла на эран:


    1, $p


    1. Добавим текст в начало файла:


    1p

    i

    Hello!

    .
    Теперь в середину файла:
    3p

    a

    World

    .
    И в конце файла:

    $p

    a

    Bye!

    .


    1. Выведем весь файл на экран:


    1,$p


    1. Переименуем файл file1 в file5:


    $ mv file1 file5


    1. Скопируем file0 из каталога b0/b1 в каталог a0/a1/a2:


    $ cp file0

    /a0/a1/a2


    1. Создадим в каталоге a0 необходимый скрипт:


    $ cd /a0

    $ cat >script

    # Вывод на экран перечня файлов, «дочерних» к заданному каталогу, которые #имеют в своем имени заданный набор символов

    #параметр 1 – имя каталога

    #параметр 2 – набор символов

    find $1 -type f -name $2

    #Уничтожение всех остальных файлов заданного каталога

    chmod a+w

    rm –i ‘find $1 \! –name $2 –a –type f ‘




    1. Создаём инициализационный скрипт:


    $ cat >/.profile

    #Приветствуем

    echo Hello!

    #Меняем приглашение на $$

    PS1=$$

    #Запуск скрипта из предыдущей задачи

    {$HOME}/a0/script {$HOME}/b0/b1 file


    Литература


    1. Коцубинский В.П. Операционные системы: учебно-методическое пособие./ Коцубинский В.П., Изюмов А.А. – Томск: ТУСУР, 2016. – 244 с


    написать администратору сайта