Страница 1 из 1
FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 12:44:10
MadLord
Приветствую!...
поставил наконец-то вышедшую 7.1 и столкнулся со странным поведением команды script(в инете пока не могу найти подобного)...имеется скрипт patch содержащий в самом начале строки:
Код: Выделить всё
#!/bin/sh
if [ -r patch.conf ]; then
. patch.conf
else
echo "patch.conf not found"
exit
fi
так вот...если просто запустить скрипт ./patch, то(при отсутствии файла patch.conf) в STDOUT будет сообщение об отсутствии файла...но если запустить скрипт так:
script -q log ./patch
то ни в STDOUT ни в файле log ничего нет!...притом, что на FreeBSD 6.4(и 6.2) все работает нормально(и в STDOUT и в файл log есть сообщение об отсутствии файла)....
подскажите где может быть косяк?....
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 13:15:19
zg
пути смотри, и к конфигу лучше задать абсолютный, анпример так
Код: Выделить всё
#!/bin/sh
cd `dirname "$0"`
if [ -r patch.conf ]; then
. patch.conf
else
echo "patch.conf not found"
exit
fi
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 13:28:03
MadLord
да нет...дело не в файлах...файла patch.conf и не должно быть...дело в том, что /usr/bin/script не работает как надо....
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 13:34:17
zg
MadLord писал(а):да нет...дело не в файлах...файла patch.conf и не должно быть...дело в том, что /usr/bin/script не работает как надо....
как проверял? скриптом с двойной логикой?
Код: Выделить всё
zg# uname -r
7.1-PRERELEASE
zg# script -q /root/log.txt
zg# echo Hello
Hello
zg# exit
zg#
zg# ll -h /root/log.txt
-rw-r--r-- 1 root wheel 38B Nov 15 16:20 /root/log.txt
zg# cat /root/log.txt
zg# echo Hello
Hello
zg# exit
zg#
у меня всё пашет

Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 13:48:21
MadLord
мдя...сидим теперь с напарником вдвоем не вкуриваем...со строкой "cd `dirname "$0"`" заработало....
попробую на пальцах пример привести:
1. создаем файл test.sh такого содержания
2. делаем его исполнимым(chmod +x 1.sh)
3.запускаем
и получаем желаемое - aaa
4.запускаем через script
и НЕ получаем желаемое!....
5.добавляем в 1.sh строку
6.запускаем через script
и получаем желаемое - aaa!!!...
PATH пропадает?...
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 13:53:47
zg
MadLord писал(а):мдя...сидим теперь с напарником вдвоем не вкуриваем...со строкой "cd `dirname "$0"`" заработало....
да чё тут не понтяного - у вас в текущей папке валяется patch.conf, который и подключается при работе скрипта, при этом никакого сообщения у вас не задумано.
Чтобы скрипт работал в своей папке, надо сначало в неё перейти.
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 13:56:38
MadLord
да отвлекись ты от patch.conf...читай мой последний пост....

Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 14:08:01
zg
MadLord писал(а):да отвлекись ты от patch.conf...читай мой последний пост....

гм... а вы чего от него хотите-то?
Код: Выделить всё
NAME
script -- make typescript of terminal session
SYNOPSIS
script [-akq] [-t time] [file [command ...]]
DESCRIPTION
The script utility makes a typescript of everything printed on your ter-
minal. It is useful for students who need a hardcopy record of an inter-
active session as proof of an assignment, as the typescript file can be
printed out later with lpr(1).
он с терминалами работает, а не со стандартным выходом. Если ван нужно сохранить вывод юзайте
tee
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 14:12:23
MadLord
в 6.4(да и в 6.2) он работает как надо, а в 7.1 разучился?...

Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 14:20:31
zg
Код: Выделить всё
zg# uname -r
7.0-STABLE
zg# script log sh -c "echo Hello"
Script started, output file is log
Script done, output file is log
zg#
Код: Выделить всё
zg# uname -r
6.2-RELEASE
zg# script log sh -c "echo Hello"
Script started, output file is log
Hello
Script done, output file is log
zg#
гм... и правда бага какая-то -)))) можешь смело писать в багрепорт
Код: Выделить всё
zg-hosting# uname -r
6.3-RELEASE-p5
zg-hosting# script log sh -c "echo Hello"
Script started, output file is log
Hello
Script done, output file is log
zg-hosting#
гм... неужто только в семёрке такая фигня...
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 16:36:22
Гость
у мя на 8-CURRENT
Код: Выделить всё
repeat 1000 script -q /dev/null ls /dev/null | wc -l
глотает вывод через раз.
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 17:05:12
zg
Код: Выделить всё
zg# repeat 1000 script -q /dev/null ls /dev/null
/dev/null
/dev/null
/dev/null
/dev/null
/dev/null
/dev/null
/dev/null
zg#
Код: Выделить всё
zg# repeat 1000 script -q /dev/null ls /dev/null | wc -l
10
Аварийное завершение(core dumped)
zg#

песец чё твориться....
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-13 17:56:26
Alex Keda
Код: Выделить всё
lissyara$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
998
Аварийное завершение(core dumped)
lissyara$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
997
Аварийное завершение(core dumped)
lissyara$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
Аварийное завершение(core dumped)
lissyara$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
Аварийное завершение(core dumped)
lissyara$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
998
Аварийное завершение(core dumped)
lissyara$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
Аварийное завершение(core dumped)
lissyara$ uname -a
FreeBSD lissyara.moskb.local 8.0-CURRENT FreeBSD 8.0-CURRENT #0: Sun Jan 11 12:17:46 MSK 2009 lissyara@lissyara.moskb.local:/usr/obj/mnt/jabber/DISTR/FreeBSD/src/CURRENT/sys/USB2 amd64
lissyara$
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-14 6:00:47
Гость
Код: Выделить всё
> repeat 1000 script -q /dev/null ls /dev/null | wc -l
0
Abort (core dumped)
> uname -r
7.1-RELEASE
хех...
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-14 10:28:21
Гость
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-14 10:53:05
f_andrey
ага тоже там видел, интересно чем обусловлено, даже сам заинтересовался и протестил на чем есть.
Код: Выделить всё
> script log sh -c "echo Hello"
Script started, output file is log
Hello
Script done, output file is log
> repeat 1000 script -q /dev/null ls /dev/null | wc -l
995
Аварийное завершение(core dumped)
> uname -rm
8.0-CURRENT amd64
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-16 23:53:58
Alex Keda
Код: Выделить всё
hosting$ cd /tmp/
hosting$ repeat 1000 script -q /dev/null ls /dev/null | wc -l
786
Аварийное завершение(core dumped)
hosting$ uname -a
FreeBSD hosting.lissyara.su 7.1-RC2 FreeBSD 7.1-RC2 #0: Fri Dec 26 20:24:43 MSK 2008
lissyara@hosting.lissyara.su:/tmp/obj/usr/src/sys/hosting amd64
hosting$
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-17 9:23:15
zg
Код: Выделить всё
zg# uname -a
FreeBSD zg.lissyara.su 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Fri Jan 12 10:40:27 UTC 2007 root@dessler.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
zg# repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
zg#

Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-17 11:23:47
gofman
Код: Выделить всё
m24_backup# uname -a
FreeBSD m24_backup 7.1-RELEASE-p2 FreeBSD 7.1-RELEASE-p2 #0: Wed Jan 14 14:23:22 UTC 2009 root@m24_backup:/usr/obj/usr/src/sys/ROUTER i386
m24_backup# repeat 1000 script -q /dev/null ls /dev/null | wc -l
11
Аварийное завершение(core dumped)
Код: Выделить всё
chel# uname -a
FreeBSD chel.mydomain 4.10-RELEASE FreeBSD 4.10-RELEASE #1: Tue Jul 4 13:25:17 YEKST 2006 root@chel.mydomain:/usr/obj/usr/src/sys/GENERIC i386
chel# repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
Код: Выделить всё
tagil# uname -a
FreeBSD tagil.mydomain 6.2-STABLE FreeBSD 6.2-STABLE #0: Thu Sep 13 12:48:37 UTC 2007 admin@mydomain:/usr/obj/usr/src/sys/ROUTER i386
tagil# repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
Re: FreeBSD 7.1 и /usr/bin/script
Добавлено: 2009-01-18 13:36:42
kmb
Код: Выделить всё
#repeat 1000 script -q /dev/null ls /dev/null | wc -l
1000
#uname -r
5.3-RELEASE
Код: Выделить всё
#repeat 1000 script -q /dev/null ls /dev/null | wc -l
3
Abort (core dumped)
#uname -r
7.1-RELEASE-p1