UNIX — универсальная среда программирования
UNIX — универсальная среда программирования читать книгу онлайн
В книге американских авторов — разработчиков операционной системы UNIX — блестяще решена проблема автоматизации деятельности программиста, системной поддержки его творчества, выходящей за рамки языков программирования. Профессионалам открыт богатый "встроенный" арсенал системы UNIX. Многочисленными примерами иллюстрировано использование языка управления заданиями
shell.
Для программистов-пользователей операционной системы UNIX.
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
$Проверим ее:
$ cx which$ which which./which$ which ed/bin/ed$ mv which /usr/you/bin$ which which/usr/you/bin/which$Первый оператор
case1>&2echoexitexit 2exit 1exit 0exitЧто произойдет, если в вашем текущем каталоге есть программа под именем
testtest$ echo 'echo hello' >test $ cx test $ which which hello ./which$Вывод: требуется больший контроль. Можно запустить команду
whichtesttesttestwhichsedechoPATH/bin/usr/binwhichPATH$ cat which# which cmd: which cmd in PATH is executed, final versionopath=$PATHPATH=/bin:/usr/bincase $# in0) echo 'Usage: which command' 1>&2; exit 2esacfor i in `echo $opath | sed 's/^:/.:/ s/::/:.:/g s/ :$/:./ s/:/ /g'`do if test -f $i/$1 # this is /bin/test then # or /usr/bin/test only echo $i/$1 exit 0 # found it fidoneexit 1 # not found$Теперь команда
whichtestsedechoPATH$ ls -l test-rwxrwxrwx 1 you 11 Oct 1 06:55 test$ which which/usr/you/bin/which$ which test./test$ rm test$ which test/bin/test$В языке
shell||&&if||iftest -f имя_файла || echo имя_файла не существуетэквивалентно
if test ! -f имя_файлаthen echo имя файла не существуетfiОперация
||||||||&&Почему в команде
whichPATHopathЕсли в языке
shellesaccasefiifdodone
