elena_kes
написал 3 октября 2012 года в 01:44 (1437 просмотров)
Ведет себя
неопределенно; открыл 5 тем в форуме, оставил 2 комментария на сайте.
Проверьте пожалуйста мое задание. Если есть ошибки, буд благодарна за исправление и добавление доп. информации.
HOME=/home/elena<o:p></o:p>
PATH=/bin:/usr/bin:.:/usr/local/bin:/usr/bin/X11
TERM=xterm
MAIL=/var/mail/elena
HISTSIZE=1000
HISTFILE=/home/elena/.bash_history
PWD=/home/elena
EDITOR=/usr/bin/vi
RANDOM=28471
TZ=PST2EDT
SECONDS-время работы сценария (в секундах)
OLDPWD-прежний рабочий каталог
в последних двух, напишите пожалуйста какой нибудь пример команда.
И еще, Копировать файл a.txt в first каталог с названием my.dat — $ ср a.txt /my.dat подойдет команда?
спасибо за помощь!
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Это уже скучно…
«Проверьте пожалуйста мое задание» — а в чём задание?
«Пример команда» — это не задание.
«ср a.txt /my.dat» предположительно не подойдет. Но и здесь вопрос сформулирован не по-русски.
Присоединяюсь — во-первых скучно, во-вторых это уже тянет на атаку ботов :).
Я лично не возражаю против того, чтобы ответить новичкам на вопрос, и при грамотно сформулированном вопросе это сделаю. А при неточно сформулированном, но сформулированном на русском языке, возможно, даже помогу сформулировать. Как-никак я учил студентов в своё время.
Но здесь я вижу, что одному человеку помогли (вопросы были сформулированы грамотно, чётко и понятно), и пришла толпа, которая не может даже говорить на русском языке и проверить текст поста на ошибки. Очень знакомо по предыдущему опыту преподавания.
Так что повторю то, что было написано в другом посте. Внимательнее, задавайте чётче и понятней вопросы, и вы получите на них грамотные ответы. А пока получается по основному правилу обращения с компьютером. GIGO — garbage in — garbage out.
Мне кажется, что вам стоило бы получше ознакомиться с понятем «путь к файлу». Ну, на самом деле. Там ничего сложного нет. Совершенно. Понять что к чему можно просто ходя по файловой системе при помощи графического навигатора по файловой системе и разглядывая как при этом меняется адресная строка. Единственное, что может остаться непонятным — это относительные пути. Но относительный путь это то же самое что и абсолютный с одним отличием: относительный путь применяется не к корневой директории, а к текущей. Внешне относительный и абсолютный различаются по первому символу: если первый символ пути /, это значит что путь абсолютный, и идти этим путём надо начиная «от печки», то есть от корневой директории.
Я могу предложить упражнение. Вот у вас есть возможность работать с графическим менеджером файлов? Типа «проводника», «наутилуса» и «dolphin’а»? Вот запустите его. Перейдите в корневой каталог. Слева вы увидите дерево директорий.Я предполагаю что работать с ним вы умеете. Разверните там все каталоги (ну или не все, а хотя бы десяток) чтобы увидеть что нам надо будет получить. Теперь, запускаете командную строку, вбиваете туда 'cd /’. В результате вы оказываетесь в корневом каталоге. Теперь, возьмите ручку и бумажку и пользуясь командами ls и cd нарисуйте дерево каталогов начиная от /. Нарисуйте на бумажке то, что нарисовал бы графический менеджер файлов в левой своей панели, но, по-возможности, не подсматривая в эту левую панель. Задача, на самом деле достаточно трудоёмка (дерево директорий на самом деле большое очень), но это хорошо, это значит что можно продолжать заниматься этим столько сколько потребуется до полного просветления.
Если не совсем понятно, что делать надо, то я поясню на примере. Итак:
[rgo ~]$ cd /
[rgo /]$ ls
bin boot dev etc home lib lib32 lib64 lost+found mnt opt proc root run sbin sys tmp usr var
[rgo /]$ ls bin
arch busybox chroot df ed gawk gzip link lsmod mount oldfuser ptx rnano sha224sum stat touch unlink zcmp znew
attr bzcat cksum dir egrep getfacl head linux32 lsmod.old mountpoint passwd pwd run-parts sha256sum stty tr vdir zdiff
awk bzip2 comm dirname env getfattr hostid linux64 mbchk mv pidof rbash sed sha384sum su true wc zegrep
base64 cat cp dmesg expr grep hostname ln mkdir nano ping rc-status seq sha512sum sync tty who zfgrep
basename chacl cpio dnsdomainname false groups id login mkfifo netstat ping6 readlink setarch shuf tail umount whoami zforce
bash chgrp cut domainname fgrep gunzip install logname mknod nice printenv red setfacl sleep tar uname yes zgrep
bb chmod date du findmnt gzcat kill ls mktemp nisdomainname ps rm setfattr sort tee uncompress ypdomainname zless
bunzip2 chown dd echo fuser gzexe killall lsblk more nohup pstree rmdir sh split tempfile uniq zcat zmore
Здесь я выполнил две команды (не считая первой cd /), ls и ls bin. ls показала мне список каталогов лежащих в /, среди которых я увидел каталог bin. ls bin показала мне что лежит в этом самом bin. На форуме не видно, но в консольке у меня вывод цветной, и все каталоги рисуются синим цветом. И я, видя что в выводе ls bin нет ничего синего, тут же понимаю что bin не содержит подкаталогов, только файлы.
Я беру бумажку и начинаю рисовать на ней каталог /. Врисовываю в него каталог bin. Стараясь делать так, чтобы у меня получилось то же самое, что нарисовал бы графический менагер в своей левой панели. Теперь на очереди каталог boot. Я пишу: ls boot. Внутри я вижу несколько записей, из них одна синяя: grub. Я пишу: ls boot/grub. Вижу содержимое каталога /boot/grub и вижу что там подкаталогов нету. Значит я со спокойной совестью могу дорисовать на свою бумажку /boot.
Потом я проделываю то же самое для /dev. Там уже сложнее. Там много подкаталогов, и в голове все удержать не удастся. Поэтому я прорисовываю /dev последовательно. Причём в процессе выполнения этого, я чувствую раздражение от того, что каждый раз когда я пишу ls, мне приходится продолжать команду словом dev/. Например: ls dev/block; ls dev/char; ls dev/input… Чтобы не писать каждый раз dev я могу сделать финт ушами: cd dev. Я перейду в dev, текущим каталогом станет dev, и теперь чтобы заглянуть в /dev/block мне можно будет написать более короткую команду: ls block (вместо ls dev/block). Конечно же я могу и не переходя в каталог /dev провернуть всё то же самое. Это дело вкуса. Но если я перейду в dev, то когда я закончу с ним работать надо будет выполнить ещё команду cd .., для выхода наружу из dev.
Идея ясна? Ручку бумажку в зубы и вперёд. ;) Истинно говорю вам: если теоретически осознать что-то сложно, то надо осознавать практически. Кстати это более полезно, поскольку понимание будет глубже.
Вы написали: cp a.txt /my.dat, это неправильно. «/my.dat» — это абсолютный путь к файлу, потому что начинается с /. Значит всё что вы получите в результате выполнения этой команды — это файл my.dat в корневом каталоге. my.dat должен лежать в каталоге first? Значит, как минимум, мы должны дописать спереди к my.dat этот самый first, получив что-то вида: first/my.dat. Я, при этом, думаю что больше ничего дописывать и не надо, поскольку в условии ничего не сказано о том, где находится каталог first (в корневом каталоге, в домашней директории, ещё где-то), то мы делаем вывод что это не важно и предполагаем что тот, кто писал задание, считает что first лежит в текущем каталоге.
Огромное спасибо за задание. Очень помогли!