Интерпретаторы командной строки, страница 2

       б)

       Произведём вывод содержимого файлов с помощью команды cat (cat <имя файла>). В результате выводится текстовое содержимое указанного файла. Если указать в качестве аргументов несколько файлов, на экран выведется содержимое этих файлов друг за другом.

cat prog2.c

#include <stdio.h>

main ( argc, argv )

int argc;

char *argv [];

{

if (argc > 1) {

   if (fopen(argv[1],"r") == NULL) {

printf("%s:neydacha pri popitke otkrit file %s",argv[0],argv[1]);}

  else

printf("%s:file %sotkrit",argv[0],argv[1]);

}

else

     printf("otkrivaemii file ne ykazan");

}

       в)

Произведём переименовывание файла с помощью команды mv (mv <old_name> <new_name>). В результате файлу с именем old_name присваивается имя new_name. При попытке обращения к старому имени файла возникает ошибка.

       г)

       Произведём копирование файла командой cp. Синтаксис у неё такой же как и у mv. Только в отличие от предыдущей команды, эта создаёт новый файл с именем new_name, содержимое  которого совпадает с сожержимым файла old_name.

       д)

       Удаление файла производится командой rm (rm <имя_файла>). При выполнении этой команды указанный файл удаляется из файловой системы. Команды mv, cp и rm имеют много дополнительных опций. Например, опция -i позволяет спрашивать у пользователя подтверждение копирования/переименования при условии , что файл с таким именем уже существует. При удалении файла данная опция всегда просит подтверждения.

5.   

       Введём команду pwd. В результате на экран выводится полный путь к текущему каталогу.

# pwd

/home/Xromov

 Соответственно полное имя файла должно включать в себя путь к каталогу, в котором он находится. При выполнении команды ls </путь_к_каталогу> на экране выводится содержимое данного каталога. При выполнении команды ls /bin выводится содержимое папки bin в корневом каталоге.

# ls /bin

.                    devu-kbd             igawk                more                 stty

..                   devu-mouse           io-usb               mount                su

2_7.sh               devu-prn             kill                 mv                   sync

Fsys.umass           df                   ksh                  netmanager           true

L                    dispconf             link                 on                   uesh

ap                   du                   ln                   pax                  umount

aps                  dumpifs              login                pidin                uname

asa                  echo                 logout               ps                   uncompress

cat                  ed                   ls                   pwd                  usb

chgrp                elvis                mkdir                rm                   vi

chmod                esh                  mkefs                script               view

chown                ex                   mketfs               sendnto              waitfor

confstr              false                mkifs                sh                   who

cp                   fesh                 mkifsf_elf           shutdown             zcat

cpio                 gunzip               mkifsf_openbios      slay

csplit               gzip                 mkifsf_srec          sloginfo

dd                   hostname             mkxfs                split

Судя по содержимому этой папки, можно сказать что в ней находятся уже знакомые нам утилиты (cat, ls, pwd и т.д), а также множество других утилит. C помощью команды cd .. перейдём в вышележащий каталог. Если продолжать выполнять эту команду до бесконечности, мы будем подниматься по дереву каталогов, пока не дойдём до корневой папки. Дальнейшее выполнение команды не приведёт ни  к каким изменениям. С помощью команды cd без аргументов мы возвратимся в свой домашний каталог.       Создадим в домашнем каталоге папку командой mkdir (mkdir <имя_каталога>). В результате создастся пустой каталог. Перейдём в него командой cd (cd <Имя_каталога>).Нам не обязательно указывать полное имя каталога, включающее путь от корневой папки, так как мы находимся непосредственно на 1 уровень выше нужного нам каталога. Если бы мы находились, например, в корневой директории, пришлось бы указать полный путь. Чтобы скопировать в новый каталог файл из каталога уровнем выше применим такую команду: cp ../prog.c . "." обозначает текущий каталог. То есть мы копируем prog.c из каталога уровнем выше в текущий каталог. Имя файла в этом случае не изменяется. Для удаления директории используем команду rmdir. Но если мы попытаемся удалить каталог, в котором есть файлы, нам выведется сообщение о том, что директория не пуста. Для того, чтобы удалить директорию, необходимо удалить из неё все файлы.