LINUX.ORG.RU

FreeBSD. Помогите со скриптом


0

2

Есть каталог /packages в нём лежат все пакеты. Есть каталог /comlete, в нём ничего не лежит. Как мне из каталога /packages в каталог /complete скопировать только зависимости выводимые, по, например, pkg_info -r /var/db/pkg/xorg-minimal-100500? Помогите кто может, пожалуйста.

Если хочешь, чтобы больше людей могло помочь, можешь показать примерный вывод pkg_info -r и ls /packages.

damnemall
()
Ответ на: комментарий от damnemall

Необходимо автоматизировать процесс копирования зависимостей, вот вывод:

@pkgdep xineramaproto-1.2
@pkgdep xf86vidmodeproto-2.3
@pkgdep xf86miscproto-0.9.3
@pkgdep xextproto-7.1.1
@pkgdep printproto-1.0.4
@pkgdep kbproto-1.0.5
@pkgdep inputproto-2.0.1
@pkgdep fixesproto-4.1.2
@pkgdep dri2proto-2.3
@pkgdep damageproto-1.2.1
@pkgdep fontsproto-2.1.1
@pkgdep expat-2.0.1_1
@pkgdep pciids-20110714
@pkgdep pkg-config-0.25_1
@pkgdep pixman-0.22.0
@pkgdep freetype2-2.4.6
@pkgdep xproto-7.0.16
@pkgdep libfontenc-1.1.0
@pkgdep libXfont-1.4.4,1
@pkgdep libICE-1.0.7,1
@pkgdep libSM-1.1.1_3,1
@pkgdep libXdmcp-1.0.3
@pkgdep libXau-1.0.6
@pkgdep libpthread-stubs-0.3_3
@pkgdep libdrm-2.4.12_1
@pkgdep libxcb-1.7
@pkgdep libX11-1.3.6,1
@pkgdep xinit-1.2.0_1
@pkgdep libxkbfile-1.0.6
@pkgdep libXfixes-4.0.4
@pkgdep libXdamage-1.1.3
@pkgdep libXext-1.1.2,1
@pkgdep libXi-1.3.2,1
@pkgdep libXinerama-1.1,1
@pkgdep libXp-1.0.0,1
@pkgdep libXxf86misc-1.0.2
@pkgdep libXxf86vm-1.1.0
@pkgdep libGL-7.4.4
@pkgdep dri-7.4.4,2
@pkgdep libXt-1.0.9
@pkgdep libxkbui-1.0.2_1
@pkgdep libXpm-3.5.7
@pkgdep libXmu-1.1.0,1
@pkgdep xauth-1.0.5
@pkgdep libXaw-1.0.8,1
@pkgdep libpciaccess-0.12.1
@pkgdep libiconv-1.13.1_1
@pkgdep gettext-0.18.1.1
@pkgdep xkeyboard-config-1.8_2
@pkgdep xorg-server-1.7.7_2,1
@pkgdep xf86-video-vesa-2.3.0_1
@pkgdep xf86-input-keyboard-1.5.0
@pkgdep xf86-input-mouse-1.6.0


.
..
autoconf-2.68.tbz
autoconf-wrapper-20101119.tbz
automake-1.11.1.tbz
automake-wrapper-20101119.tbz
bigreqsproto-1.1.1.tbz
compositeproto-0.4.2.tbz
damageproto-1.2.1.tbz
dri-7.4.4,2.tbz
dri2proto-2.3.tbz
evieext-1.1.0.tbz
expat-2.0.1_1.tbz
fixesproto-4.1.2.tbz
fontsproto-2.1.1.tbz
freetype2-2.4.6.tbz
gdbm-1.8.3_3.tbz
gettext-0.18.1.1.tbz
glproto-1.4.12.tbz
gmake-3.82.tbz
help2man-1.40.4.tbz
inputproto-2.0.1.tbz
intltool-0.41.1.tbz
kbproto-1.0.5.tbz
libGL-7.4.4.tbz
libICE-1.0.7,1.tbz
libSM-1.1.1_3,1.tbz
libX11-1.3.6,1.tbz
libXau-1.0.6.tbz
libXaw-1.0.8,1.tbz
libXdamage-1.1.3.tbz
libXdmcp-1.0.3.tbz
libXext-1.1.2,1.tbz
libXfixes-4.0.4.tbz
libXfont-1.4.4,1.tbz
libXi-1.3.2,1.tbz
libXinerama-1.1,1.tbz
libXmu-1.1.0,1.tbz
libXp-1.0.0,1.tbz
libXpm-3.5.7.tbz
libXt-1.0.9.tbz
libXxf86misc-1.0.2.tbz
libXxf86vm-1.1.0.tbz
libcheck-0.9.8.tbz
libdrm-2.4.12_1.tbz
libfontenc-1.1.0.tbz
libgcrypt-1.5.0.tbz
libgpg-error-1.10.tbz
libiconv-1.13.1_1.tbz
libpciaccess-0.12.1.tbz
libpthread-stubs-0.3_3.tbz
libtool-2.4.tbz
libxcb-1.7.tbz
libxkbfile-1.0.6.tbz
libxkbui-1.0.2_1.tbz
libxml2-2.7.8_1.tbz
libxslt-1.1.26_3.tbz
m4-1.4.16,1.tbz
makedepend-1.0.3,1.tbz
p5-Locale-gettext-1.05_3.tbz
p5-XML-Parser-2.40.tbz
pciids-20110714.tbz
perl-threaded-5.12.4_1.tbz
pixman-0.22.0.tbz
pkg-config-0.25_1.tbz
printproto-1.0.4.tbz
python27-2.7.2_1.tbz
randrproto-1.3.2.tbz
recordproto-1.14.tbz
renderproto-0.11.tbz
resourceproto-1.0.2.tbz
scrnsaverproto-1.2.0.tbz
trapproto-3.4.3.tbz
videoproto-2.3.0.tbz
xauth-1.0.5.tbz
xcb-proto-1.6.tbz
xcmiscproto-1.2.0.tbz
xextproto-7.1.1.tbz
xf86-input-keyboard-1.5.0.tbz
xf86-input-mouse-1.6.0.tbz
xf86-video-vesa-2.3.0_1.tbz
xf86bigfontproto-1.2.0.tbz
xf86dgaproto-2.1.tbz
xf86driproto-2.1.0.tbz
xf86miscproto-0.9.3.tbz
xf86vidmodeproto-2.3.tbz
xineramaproto-1.2.tbz
xinit-1.2.0_1.tbz
xkbcomp-1.1.0.tbz
xkeyboard-config-1.8_2.tbz
xorg-macros-1.11.0.tbz
xorg-minimal-7.5.1.tbz
xorg-server-1.7.7_2,1.tbz
xproto-7.0.16.tbz
xtrans-1.2.5.tbz

skyline
() автор топика
Ответ на: комментарий от skyline

Еще я не обратил внимания, что запятые в именах файлов тоже есть. Тогда все еще проще.

for i in $(pkg_info -r PACKAGE | sed 's/@pkgdep //'); do cp "/packages/$i.tbz" /complete; done
damnemall
()
Ответ на: комментарий от damnemall

Пфу, for же и есть цикл, спасибо, будем попробовать.

skyline
() автор топика
Ответ на: комментарий от AnDoR

> Чувак, во фре по-дефолту не bash и не sh, а csh.

Надеюсь, переписать то, что не проглотит csh, проблемы нет. В нем я не силен.

damnemall
()
Ответ на: комментарий от damnemall

Спасибо добр человек, работает :) Надо sed начинать учить и shell нормально освоить :(

skyline
() автор топика
Ответ на: комментарий от AnDoR

>Чувак, во фре по-дефолту не bash и не sh, а csh.

Для рута csh, для юзеров sh по дефолту. Это раз. Скриптик я сохранил и задал shebang. Это два.

skyline
() автор топика
Ответ на: комментарий от damnemall

>Надеюсь, переписать то, что не проглотит csh, проблемы нет. В нем я не силен.

Да есть тут эталонный sh, есть.

skyline
() автор топика
Ответ на: комментарий от skyline

> Для рута csh, для юзеров sh по дефолту. Это раз. Скриптик я сохранил и задал shebang. Это два.
ok!

AnDoR ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.