unix (Практическая работа по предмету UNIX), страница 5

2016-07-31СтудИзба

Описание файла

Документ из архива "Практическая работа по предмету UNIX", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.

Онлайн просмотр документа "unix"

Текст 5 страницы из документа "unix"

Скопируйте, например, файл .profile, находящийся в Вашем личном каталоге, для чего введите команду

cp .profile pro

Команда

ls -l

продемонстрирует Вам, что Вы создали файл pro, который является копией файла .profile.

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

cp .kermrc pro

Команда

ls –l

покажет, что файл pro - копия .profile исчез, а это имя теперь носит копия файла .kermrc.

Однако в разных каталогах можно использовать одинаковые имена файлов.

      1. Копирование нескольких файлов.

Команда cp позволяет скопировать и несколько файлов одновременно. В этом случае синтаксис команды cp следующий:

cp <имя файла1> <имя файла N > <имя каталога >,

где файл1 … файл N – копируемые файлы, а последний аргумент является каталогом, в который Вы копируете.

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

cp .kermrc .profile newcat

Вы увидите следующее сообщение:

Usage: cp file1 file2

cp file… dir

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

Поэтому давайте создадим новый каталог в Вашем личном каталоге:

mkdir newcat

Проверьте, появился ли каталог newcat с помощью команды

ls –F

Среди файлов и подкаталогов текущего каталога Вы должны найти имя newcat, отмеченное косой чертой / (помните, что это значит?).

Теперь, когда каталог создан, можно повторить попытку копирования файлов:

cp .kermrc .profile newcat

На этот раз она должна быть более удачной, проверим это:

cd newcat; ls -а

Команда ls -а вывела на экран список файлов текущего каталога newcat – это файлы .kermrc и .profile.

При копировании нескольких файлов можно использовать шаблоны. Давайте создадим еще один подкаталог Вашего личного каталога:

cd; mkdir secnew

В подкаталоге newcat создадим файлы

echo 'hello' >hel; date>vrem1

А теперь с помощью шаблона * скопируем в подкаталог secnew все файлы подкаталога newcat:

cp newcat/* secnew

Проверьте результаты нашей работы, введя уже знакомые Вам команды:

cd secnew; ls -а

Не удивляйтесь, что не скопировались файлы .kermrc .profile - их имена начинаются с точки, а шаблон * не задает таких имен. (Для задания подобных имен используют шаблон .*)

      1. Копирование файлов и подкаталогов.

Опция -r команды cp позволяет копировать файлы в каталоге, включая любое количество подкаталогов и входящих в них файлов.

Попробуйте скопировать все файлы и подкаталоги каталога newcat в каталог thnew. Для этого введите следующие команды

cd

cp -r newcat thnew

Команды

cd thnew

ls –Fa

убедят Вас, что все получилось.

Опция -r также разрешает использовать шаблоны. Командная строка

cd; mkdir fornew; cp -r * fornew

позволит Вам скопировать все файлы и подкаталоги Вашего личного каталога в каталог fornew (за исключением тех, имена которых начинаются с точки). Проверку выполнят все те же команды:

cd fornew

ls –Fa

Если Вы употребите команду cp без -r, то использование шаблона * приведет лишь к копированию файлов текущего каталога:

cd; mkdir finew

cp * finew

эта команда копирует все файлы Вашего личного каталога в подкаталог finew, исключая все подкаталоги. Когда cp встречает каталог, она выдает сообщение:

cp: fornew: Is a directory

(fornew: это каталог). Команды

cd finew

ls –Fa

докажут Вам, что скопированы лишь файлы.

Вы можете также скопировать и любой подкаталог

cp -r fornew sixnew

Команда

ls –l

укажет Вам, что созданный каталог sixnew является копией каталога fornew.

    1. Перемещение файлов и каталогов.

      1. Перемещение файлов.

Если Вы хотите переместить файл, т.е. Вам нужна копия файла в другом каталоге, а старая не нужна, то используйте команду

mv <имя файла> <имя каталога>,

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

Выведите на экран список файлов и подкаталогов Вашего личного каталога и подкаталога secnew с помощью командной строки:

cd; ls -a . secnew

Заметьте, что файл .profile существует в Вашем личном каталоге, а в подкаталоге secnew такого файла нет. Команда

mv .profile secnew

переместит файл .profile в каталог secnew. А команда

ls -a . secnew

подтвердит выполнение команды mv.

Чтобы вернуть файл .profile в Ваш личный каталог, следует воспользоваться командой

mv secnew/.profile .

Увидеть результат позволит все та же команда

ls -a . secnew

С помощью команды mv можно переместить и несколько файлов, но опять же лишь в существующий каталог. Давайте переместим файлы hel и vrem из подкаталога secnew в Ваш личный каталог, для чего используем команду

mv secnew/hel secnew/vrem .

и проверим, что файлы перемещены

ls -a . secnew

Обратите внимание, что, если до перемещения файлов, в каталоге существуют файлы, имена которых совпадают с именами перемещаемых файлов, то после перемещения такие файлы будут уничтожены, и команда mv не предупредит Вас об этом.

Чтобы убедиться в вышесказанном введите следующие команды:

cd secnew; echo hi>hel

Вы создали файл hel в каталоге secnew.

ls . newcat; cat hel; cat newcat/hel

Вы вывели на экран списки файлов и подкаталогов каталогов secnew и newcat, а также содержимое файла hel каталога secnew и файла hel каталога newcat.

mv hel newcat; cat newcat/hel

Вы переместили файл hel из каталога secnew в каталог newcat и вывели на экран содержимое файла hel каталога newcat.

      1. Перемещение каталогов.

Команда mv позволяет также перемещать каталоги со всеми их файлами и подкаталогами. В этом случае вместо имени перемещаемого файла указывается имя каталога. Для перемещения подкаталога newcat в подкаталог secnew используйте команду

mv newcat secnew

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

ls -aF secnew .

      1. Использование шаблонов.

Для перемещения файлов разрешается использовать шаблоны. Попробуйте переместить все файлы подкаталога secnew в новый каталог. Сначала создайте каталог ctmv - в него Вы переместите файлы и проверьте, что каталог создан:

cd; mkdir ctmv; ls -F . secnew ctmv

А затем воспользуйтесь шаблоном *:

mv secnew/* ctmv

Команда

ls -F secnew ctmv

позволит увидеть изменения, произошедшие в каталогах secnew и ctmv.

    1. Переименование файлов.

В формате MS Word 97

  1. Работа с shell.

Интерпретатор shell - это наиболее важная программа для пользователей UNIX, быть может, за исключением текстового редактора. Она исполняет запросы на запуск программ и предоставляет дополнительные возможности использования имеющихся команд и даже написания собственных. С некоторыми свойствами shell Вы уже знакомы. Одно из них способность ссылаться сразу более чем на один файл, используя для этого специальные символы - шаблоны; другое - задание списка каталогов, в которых производится поиск команд для запуска по неполному имени, третье - возможность использования нескольких команд в одной командной строке. Сейчас Вы познакомитесь и с некоторыми другими возможностями интерпретатора shell.

    1. Стандартный вход и стандартный выход.

Многие команды UNIX получают информацию с так называемого стандартного входа и посылают информацию на опять же так называемый стандартный выход. (Для них часто используются сокращения "stdin" и "stdout" соответственно). shell организует дело так, что стандартным входом служит клавиатура, а стандартным выходом - экран.

Рассмотрим, к примеру, использование команды cat. В случае, когда в качестве параметров заданы имена файлов, cat читает данные из файлов, имена которых определены в командной строке и посылает эти данные прямо на stdout. Поэтому при выполнении команды

cat .profile .kermrc

на экран будет выведено содержимое файла .profile, а следом за ним содержимое файла .kermrc.

Но если команде cat не заданы имена файлов в качестве параметров, то она читает данные со стандартного входа (клавиатуры) и посылает их на стандартный выход (экран). Вот пример. Введите команду

cat -u

Затем напечатайте

Hello there.

На экране появится

Hello there.

Напечатайте

Bye.

Вы получите ответ:

Bye.

Как видите, каждая строка, которую Вы напечатали, немедленно выдается командой cat на экран. При вводе со стандартного входа команда считает, что ввод закончен тогда, когда Вы нажимаете клавиши CTRL-d. Эта комбинация клавиш посылает команде сигнал EOT (End-Of-Text - конец текста). Поэтому нажмите CTRL-d (должно появиться новое приглашение на ввод $) и давайте рассмотрим другой пример.

Воспользуемся новой для Вас командой sort. Это команда сортировки. Без указания аргументов она сортирует информацию, поступающую со стандартного входа, упорядочивая строки в лексикографическом порядке, и выдает результат на стандартный выход - экран.

Попробуйте так:

введите команду

sort

напечатайте с клавиатуры следующее (для перехода на новую строку используйте ENTER):

bananas

carrots

apples

Нажмите CTRL-d и Вы увидите измененный список.

apples

bananas

carrots

В конце появится новое приглашение на ввод команд $.

    1. Перенаправление входа и выхода.

Теперь, предположим, что Вы хотите послать результат сортировки в файл, чтобы сохранить список планируемых покупок. shell дает возможность перенаправлять стандартный выход в файл, используя символ ">". Вот как это работает:

напечатайте команду sort и после символа > укажите имя файла, в который хотите сохранить результат выполнения команды (эта процедура должна быть Вам знакома - Вы уже создавали файлы подобным образом)

sort > shopping-list

Затем введите с клавиатуры список предполагаемых покупок (он попадет во входной поток команды, ведь по умолчанию входной поток - клавиатура):

bananas

carrots

apples

Снова нажмите CTRL-d.

Как Вы можете видеть, результат работы команды sort не отображается на экране (после нажатия клавиш CTRL-d сразу появляется новое приглашение), вместо этого он сохраняется в файле shopping-list (список покупок). Давайте проверим, действительно ли это так с помощью давно знакомой Вам команды cat:

cat shopping-list

Если Вы все сделали правильно, то содержимое файла shopping-list будет выглядеть следующим образом:

apples

bananas

carrots

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

Создайте файл pokupki, с помощью команды echo и перенаправления выходного потока:

echo " carrots

bananas

apples "> pokupki

для перевода строки используйте клавишу ENTER. ENTER не будет восприниматься как сигнал завершения ввода команды до тех пор, пока Вы не закроете кавычки. В начале каждой строки будет появляться повторное приглашение на ввод ">".

После того как Вы создали файл, отсортируйте его и сохраните указанным выше способом:

sort pokupki > shopping-list

С помощью команды cat проверьте выполнение введенной команды:

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5173
Авторов
на СтудИзбе
436
Средний доход
с одного платного файла
Обучение Подробнее