В этом упражнении вы будете создавать, организовывать, копировать и удалять файлы и каталоги.
Результаты
После завершения этого раздела вы сможете создавать, организовывать, копировать и удалять файлы и каталоги.
Войдите на workstation как пользователь student с паролем student.
workstation
student
На workstation выполните команду lab files-manage start. Эта команда запускает подготовительный сценарий, который проверяет доступность машины servera в сети.
servera
[student@workstation ~]$ lab files-manage start
[student@workstation ~]$
lab files-manage start
С помощью команды ssh войдите на servera как пользователь student. Системы настроены на использование ключей SSH для аутентификации, поэтому пароль не требуется.
[student@workstation ~]$ ssh student@servera ...output omitted... [student@servera ~]$
ssh student@servera
[student@servera ~]$
В домашнем каталоге пользователя student используйте команду mkdir, чтобы создать три подкаталога: Music, Pictures и Videos.
Music
Pictures
Videos
[student@servera ~]$ mkdir Music Pictures Videos
mkdir Music Pictures Videos
В домашнем каталоге пользователя student используйте команду touch, чтобы создать наборы пустых файлов для этой лабораторной работы.
Создайте шесть файлов с именами в виде songX.mp3.
songX.mp3
X
Создайте шесть файлов с именами в виде snapX.jpg.
snapX.jpg
Создайте шесть файлов с именами в виде filmX.avi.
filmX.avi
В каждом наборе замените X номерами от 1 до 6.
[student@servera ~]$ touch song1.mp3 song2.mp3 song3.mp3 song4.mp3 \ song5.mp3 song6.mp3 [student@servera ~]$ touch snap1.jpg snap2.jpg snap3.jpg snap4.jpg \ snap5.jpg snap6.jpg [student@servera ~]$ touch film1.avi film2.avi film3.avi film4.avi \ film5.avi film6.avi [student@servera ~]$ ls -l total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:23 film1.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film2.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film3.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film4.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film5.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film6.avi drwxrwxr-x. 2 student student 6 Feb 4 18:23 Music drwxrwxr-x. 2 student student 6 Feb 4 18:23 Pictures -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap1.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap2.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap3.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap4.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap5.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap6.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 song1.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song2.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song3.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song4.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song5.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song6.mp3 drwxrwxr-x. 2 student student 6 Feb 4 18:23 Videos
touch song1.mp3 song2.mp3 song3.mp3 song4.mp3 \
song5.mp3 song6.mp3
touch snap1.jpg snap2.jpg snap3.jpg snap4.jpg \
snap5.jpg snap6.jpg
touch film1.avi film2.avi film3.avi film4.avi \
film5.avi film6.avi
ls -l
Из домашнего каталога пользователя student переместите файлы песен в подкаталог Music, файлы снимков в подкаталог Pictures, а файлы фильмов в подкаталог Videos.
При распределении файлов из одного расположения в несколько сначала перейдите в каталог, содержащий исходные файлы. Используйте простой синтаксис пути (абсолютный или относительный), чтобы дойти до целевого расположения в каждой задаче управления файлами.
[student@servera ~]$ mv song1.mp3 song2.mp3 song3.mp3 song4.mp3 \ song5.mp3 song6.mp3 Music [student@servera ~]$ mv snap1.jpg snap2.jpg snap3.jpg snap4.jpg \ snap5.jpg snap6.jpg Pictures [student@servera ~]$ mv film1.avi film2.avi film3.avi film4.avi \ film5.avi film6.avi Videos [student@servera ~]$ ls -l Music Pictures Videos Music: total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song1.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song2.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song3.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song4.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song5.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:23 song6.mp3 Pictures: total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap1.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap2.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap3.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap4.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap5.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:23 snap6.jpg Videos: total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:23 film1.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film2.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film3.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film4.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film5.avi -rw-rw-r--. 1 student student 0 Feb 4 18:23 film6.avi
mv song1.mp3 song2.mp3 song3.mp3 song4.mp3 \
song5.mp3 song6.mp3 Music
mv snap1.jpg snap2.jpg snap3.jpg snap4.jpg \
snap5.jpg snap6.jpg Pictures
mv film1.avi film2.avi film3.avi film4.avi \
film5.avi film6.avi Videos
ls -l Music Pictures Videos
В домашнем каталоге student создайте три подкаталога для распределения файлов по проектам. Назовите эти подкаталоги friends, family и work. Используйте одну команду для одновременного создания этих трех подкаталогов.
friends
family
work
Вы будете использовать эти каталоги для распределения файлов по проектам.
[student@servera ~]$ mkdir friends family work [student@servera ~]$ ls -l total 0 drwxrwxr-x. 2 student student 6 Feb 4 18:38 family drwxrwxr-x. 2 student student 6 Feb 4 18:38 friends drwxrwxr-x. 2 student student 108 Feb 4 18:36 Music drwxrwxr-x. 2 student student 108 Feb 4 18:36 Pictures drwxrwxr-x. 2 student student 108 Feb 4 18:36 Videos drwxrwxr-x. 2 student student 6 Feb 4 18:38 work
mkdir friends family work
Скопируйте набор новых файлов в проектные каталоги family и friends. Используйте столько команд, сколько потребуется. Использовать только одну команду, как в примере, не обязательно. Для каждого проекта сначала перейдите в каталог проекта, а затем скопируйте исходные файлы в этот каталог. Имейте в виду, что вы создаете копии, поэтому оригинальные файлы останутся на своих местах, после того как файлы будут скопированы в проектные каталоги.
Скопируйте файлы (всех типов) с номерами 1 и 2 в подкаталог friends.
Скопируйте файлы (всех типов) с номерами 3 и 4 в подкаталог family.
При копировании файлов из нескольких расположений в одно Red Hat рекомендует перейти в целевой каталог, прежде чем начинать копирование. Используйте простой синтаксис пути (абсолютный или относительный), чтобы дойти до исходного расположения в каждой задаче управления файлами.
[student@servera ~]$ cd friends [student@servera friends]$ cp ~/Music/song1.mp3 ~/Music/song2.mp3 \ ~/Pictures/snap1.jpg ~/Pictures/snap2.jpg ~/Videos/film1.avi \ ~/Videos/film2.avi . [student@servera friends]$ ls -l total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:42 film1.avi -rw-rw-r--. 1 student student 0 Feb 4 18:42 film2.avi -rw-rw-r--. 1 student student 0 Feb 4 18:42 snap1.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:42 snap2.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:42 song1.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:42 song2.mp3 [student@servera friends]$ cd ../family [student@servera family]$ cp ~/Music/song3.mp3 ~/Music/song4.mp3 \ ~/Pictures/snap3.jpg ~/Pictures/snap4.jpg ~/Videos/film3.avi \ ~/Videos/film4.avi . [student@servera family]$ ls -l total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:44 film3.avi -rw-rw-r--. 1 student student 0 Feb 4 18:44 film4.avi -rw-rw-r--. 1 student student 0 Feb 4 18:44 snap3.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:44 snap4.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:44 song3.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:44 song4.mp3
cd friends
[student@servera friends]$
cp ~/Music/song1.mp3 ~/Music/song2.mp3 \
~/Pictures/snap1.jpg ~/Pictures/snap2.jpg ~/Videos/film1.avi \
~/Videos/film2.avi .
cd ../family
[student@servera family]$
cp ~/Music/song3.mp3 ~/Music/song4.mp3 \
~/Pictures/snap3.jpg ~/Pictures/snap4.jpg ~/Videos/film3.avi \
~/Videos/film4.avi .
Создайте дополнительные копии для проекта work.
[student@servera family]$ cd ../work [student@servera work]$ cp ~/Music/song5.mp3 ~/Music/song6.mp3 \ ~/Pictures/snap5.jpg ~/Pictures/snap6.jpg \ ~/Videos/film5.avi ~/Videos/film6.avi . [student@servera work]$ ls -l total 0 -rw-rw-r--. 1 student student 0 Feb 4 18:48 film5.avi -rw-rw-r--. 1 student student 0 Feb 4 18:48 film6.avi -rw-rw-r--. 1 student student 0 Feb 4 18:48 snap5.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:48 snap6.jpg -rw-rw-r--. 1 student student 0 Feb 4 18:48 song5.mp3 -rw-rw-r--. 1 student student 0 Feb 4 18:48 song6.mp3
cd ../work
[student@servera work]$
cp ~/Music/song5.mp3 ~/Music/song6.mp3 \
~/Pictures/snap5.jpg ~/Pictures/snap6.jpg \
~/Videos/film5.avi ~/Videos/film6.avi .
Задачи вашего проекта теперь выполнены, и пришло время очистить проекты.
Перейдите в домашний каталог пользователя student. Попытайтесь удалить проектные каталоги family и friends с помощью одной команды rmdir.
[student@servera work]$ cd [student@servera ~]$ rmdir family friends rmdir: failed to remove 'family': Directory not empty rmdir: failed to remove 'friends': Directory not empty
cd
rmdir family friends
Команда rmdir должна завершиться ошибкой, поскольку оба подкаталога содержат файлы.
Используйте команду rm -r, чтобы рекурсивно удалить подкаталоги family и friends, а также их содержимое.
[student@servera ~]$ rm -r family friends [student@servera ~]$ ls -l total 0 drwxrwxr-x. 2 student student 108 Feb 4 18:36 Music drwxrwxr-x. 2 student student 108 Feb 4 18:36 Pictures drwxrwxr-x. 2 student student 108 Feb 4 18:36 Videos drwxrwxr-x. 2 student student 108 Feb 4 18:48 work
rm -r family friends
Удалите все файлы в проекте work, но не удаляйте каталог work.
[student@servera ~]$ cd work [student@servera work]$ rm song5.mp3 song6.mp3 snap5.jpg snap6.jpg \ film5.avi film6.avi [student@servera work]$ ls -l total 0
cd work
rm song5.mp3 song6.mp3 snap5.jpg snap6.jpg \
Из домашнего каталога пользователя student выполните команду rmdir, чтобы удалить каталог work. Поскольку каталог теперь пуст, выполнение команды должно привести к нужному результату.
[student@servera work]$ cd [student@servera ~]$ rmdir work [student@servera ~]$ ls -l total 0 drwxrwxr-x. 2 student student 108 Feb 4 18:36 Music drwxrwxr-x. 2 student student 108 Feb 4 18:36 Pictures drwxrwxr-x. 2 student student 108 Feb 4 18:36 Videos
rmdir work
Выйдите с servera.
[student@servera ~]$ exit logout Connection to servera closed. [student@workstation ~]$
exit
Конец
На workstation запустите сценарий lab files-manage finish, чтобы закончить упражнение. Этот сценарий удалит все каталоги и файлы, созданные во время упражнения.
[student@workstation ~]$ lab files-manage finish
lab files-manage finish
Упражнение завершено.