Как найти каталог, в который установлен OpenOffice.org?

Автор Yakov, 7 июня 2010, 20:41

0 Пользователи и 2 гостей просматривают эту тему.

Yakov

Как найти каталог, в который установлен OpenOffice.org?
Для Windows всё понятно - надо проанализировать реестр.
А что делать для Linux?

Рыбка Рио

в терминале можно ввести:
Цитироватьgrep 'soffice' '/usr/bin/openoffice.org3'
ubuntu 12.04 + LibO3.6.0

Рыбка Рио

А ещё можно так:
Цитироватьreadlink '/usr/bin/soffice'
ubuntu 12.04 + LibO3.6.0

prof-alex

Ага, а потом заглянуть в этот soffice и убедиться что это только враппер, да ещё неизвестно на чём написанный, то ли шелл, то ли перл. В /usr/lib[32|64] нужно заглядывать.

«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации» Э. Дейкстра

Рыбка Рио

А если у вас установлено несколько разных версий OOo , которые к тому же никак не интегрированы в систему, то можно так, в терминале:
Цитироватьfind / -name 'soffice' -type f > /tmp/123 ; gedit /tmp/123
ubuntu 12.04 + LibO3.6.0

Рыбка Рио

Можно выполнить макрос:

Sub Main
Shell ("bash -c 'find / -name ""soffice"" -type f > /tmp/123 ; gedit /tmp/123'")
End Sub
ubuntu 12.04 + LibO3.6.0

Yakov


Цитата: Трио от  7 июня 2010, 22:38
Можно выполнить макрос:
Результат выполнения:
Цитировать
find: /lost+found: Отказано в доступе
find: /boot: Отказано в доступе
find: /home/user/.mc/cedit: Отказано в доступе
............
bash: gedit: command not found
Так что самый приемлемый способ
Цитировать
readlink '/usr/bin/soffice'

Yakov

Цитата: prof-alex от  7 июня 2010, 21:09
В /usr/lib[32|64] нужно заглядывать.
На моей машине там нашёлся OOo2.2 из дистрибутива. А вот OOo3.1.1 Pro там следов не оставил

Рыбка Рио

#8
Если gedit нет, то можно soffice или другой редактор.
Sub Main
Shell ("bash -c 'find / -name ""soffice"" -type f > /tmp/123 ; soffice /tmp/123'")
End Sub
Просто, в usr/bin могут быть не все OOo. А может можно как-то отключить эти "отказано в доступе"? Тогда не нужны будут другие редакторы.

У меня кстати, установлено сейчас 3 офиса:
/opt/openoffice.org3/program/soffice
/opt/ooo-dev3/program/soffice
/home/user/Programs/go-oo3.2/openoffice.org3/program/soffice
ubuntu 12.04 + LibO3.6.0

N2H4

Цитата: Трио от  8 июня 2010, 09:09
А может можно как-то отключить эти "отказано в доступе"?
Можно:
find / -name "soffice" -type f  2> /dev/null  > /tmp/123

bormant

#10
Цитироватьfind / ...
Браво, бра-во, бра-во-о-о-о-о-о-о...    ???

А о необходимости и последствиях поиска от корня хорошо подумали?
Он действительно может быть в /dev, /proc или /sys?
Нужно ли искать в /mnt, куда может быть смонтировано немало сетевых ресурсов?
Стоит ли и искать в /tmp и /var/tmp, где по определению полно всякого хлама?

Если предварительно почитать LSB или хотя бы man hier, то на поиске можно здорово сэкономить...
Пользовательские исполняемые файлы обычно живут в:
{/,/usr,/usr/local}/bin
/opt
и библиотеки (тоже бывают исполняемыми):
{/,/usr,/usr/local}/lib
/opt

В дополнение можно учесть, что одна из возможностей установщика OOo -- ставить в каталог в профиле пользователя (/home/*/).

Каталогов с установленным OOo всяко может быть больше одного.
Автору на яд. Поддержать форум.

N2H4

#11
Цитата: bormant от  8 июня 2010, 10:16
Стоит ли искать ... где по определению полно всякого хлама?
Незачем, но ведь и задачи оптимизации не ставилось :)

Кроме того, возможно, оптимисты

for i in {,/usr,/usr/local}{/bin,/lib} /opt /home;  do   find  $i  -name soffice -type f 2>/dev/null; done;

и пессимисты вроде меня

find /    \( -path /media  -or -path /mnt  -or -path /proc   -or -path /sys  -or -path /dev  -or -path /sys -or -path /tmp  -or -path /var/tmp  \) -prune  ,     -name "soffice" -type f

предпочтут разные формы :).

bormant

Цитата: N2H4 от  8 июня 2010, 10:37Код:
for i in {,/usr,/usr/local}{/bin,/lib} /opt /home;  do   find  $i  -name soffice -type f 2>/dev/null; done;
А чем оптимистам не угодил

find {,/usr,/usr/local}{/bin,/lib} /opt /home -name soffice -type f

или им обязательно зацикливаться :-) ?
Автору на яд. Поддержать форум.

N2H4


N2H4

А если нужны пути не ко всем установленным вариантам OOo, а только к запущенному в данный момент — можно смотреть не файловую систему, а процессы, например,

ps x | grep soffice |  grep grep -v | awk '{print $5}'