Автор Тема: [Решено] Помогите с простым скриптом запуска приложения  (Прочитано 5921 раз)

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

Оффлайн Sergei_Alekseev

Скрипт запуска XnView:
#!/bin/sh
dirname="$(dirname "$(readlink -e "$0")")"
export LD_LIBRARY_PATH="$dirname"/lib
export QT_PLUGIN_PATH="$dirname"/lib
"$dirname"/XnView "$@"

Как здесь правильно прописать чтобы аутпут улетал в /dev/null?
« Последнее редактирование: 06 Августа 2013, 06:36:15 от qupl »
 

yura_n

  • Гость
Вероятно так:
dirname="$(dirname "$(readlink -e "$0")")"&>/dev/null
P.S. Кавычки в своем скрипте исправьте. Там где export.
« Последнее редактирование: 05 Августа 2013, 03:57:39 от yura_n »
 

Оффлайн Sergei_Alekseev

P.S. Кавычки в своем скрипте исправьте. Там где export.

Не понял насчёт кавычек, это не мой скрипт, а разработчика xnview)

Ничего не меняется так, аутпут идёт в консоль.
Если запускать  ./xnview.sh &>/dev/null то аутпута нет, но мне хотелось бы что бы это было в самом скрипте прописано.
 

yura_n

  • Гость
Не понял насчёт кавычек, это не мой скрипт, а разработчика xnview)
export LD_LIBRARY_PATH="$dirname"/lib
Неправильно. Если предположить, что в переменной dirname что-то есть, правильней все равно будет так:

export LD_LIBRARY_PATH="$dirname/lib"
Или так:
export LD_LIBRARY_PATH="$dirname""/lib"

Да и строка с dirname внушает сомнения (самая первая).

Ничего не меняется так, аутпут идёт в консоль.
Какой конкретно вывод идет в консоль? Здесь его напишите.
« Последнее редактирование: 05 Августа 2013, 01:26:37 от yura_n »
 

Оффлайн Sergei_Alekseev

Какой конкретно вывод идет в консоль? Здесь его напишите.

Запущено симлинком /usr/bin/xnview - /opt/XnView/xnview.sh

serge@debian:~$ xnview
XNVIEW restoreGeometry before : 640 480
XNVIEW restoreGeometry after : 1280 1024
QMetaObject::invokeMethod: No such method MyTabBar::layoutTabs()
QSslSocket: cannot resolve SSLv2_client_method
QSslSocket: cannot resolve SSLv2_server_method
w.init
XNVIEW SIZE 1280 1024


########### BrowserWindow :: BrowserWindow

Object::connect: No such slot BrowserWindow::onVideoGallery()
##PB connect <1onVideoGallery()>
MENU install : b1f02908
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
QLayout: Attempting to add QLayout "" to QWidget "", which already has a layout
QLayout: Attempting to add QLayout "" to QWidget "", which already has a layout
QLayout: Attempting to add QLayout "" to QWidget "", which already has a layout
QWidget::setMinimumSize: (favoriteD/QDockWidget) Negative sizes (0,-1) are not possible
QWidget::setMinimumSize: (categoryD/QDockWidget) Negative sizes (0,-1) are not possible
QWidget::setMinimumSize: (prevD/QDockWidget) Negative sizes (0,-1) are not possible
########### BrowserWindow :: ok create (640 480)
BrowserWindow :: changeVisibility()
BrowserWindow :: updateMenu()
SIZE : 0 66  (-1)
SIZE : 0 41  (-1)
SIZE : 0 90  (-1)
SIZE : 0 65  (-1)
SIZE : 0 90  (-1)
SIZE : 0 65  (-1)
BrowserWindow :: changeVisibility()
BrowserWindow :: updateMenu()
BrowserWindow :: changeVisibility()
BrowserWindow :: updateMenu()
########### BrowserWindow :: restoreState (1280 1024)
BrowserWindow :: restoreState => 1280 1024
                              => 990 932
BrowserWindow :: restoreState ok => 990 932
XNVIEW SIZE ok
XNVIEW 1 ok
## MyTabWidget :: resizeEvent : 1280 1024
## BROWSER RESIZE: 1098 341
QWidget::setMinimumSize: (favoriteD/QDockWidget) Negative sizes (0,-1) are not possible
QWidget::setMinimumSize: (categoryD/QDockWidget) Negative sizes (0,-1) are not possible
QWidget::setMinimumSize: (prevD/QDockWidget) Negative sizes (0,-1) are not possible
### MyBitmapView (96f9df0) :: resizeEvent 641 230
### MyBitmapView (96f9df0) :: resizeEvent 641 913
## BROWSER RESIZE: 1280 1024
XNVIEW 2 ok
w.start
### BrowserWindow :: onStart go
########### BrowserWindow :: restoreState (1280 1024)
BrowserWindow :: restoreState => 1280 1024
                              => 394 938
QWidget::setMinimumSize: (categoryD/QDockWidget) Negative sizes (0,-1) are not possible
QWidget::setMinimumSize: (favoriteD/QDockWidget) Negative sizes (0,-1) are not possible
BrowserWindow :: restoreState ok => 394 938
### BrowserWindow :: onStart
BrowserWindow :: onStart 2
setPathname </home/serge/Pictures/Wallpapers/>
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
### ThumbLoaderThread :: setFileList(0)
### ThumbLoaderThread :: setFileList() wait
######ThumbLoaderThread :: run : 96bb3b0
######ThumbLoaderThread :: forever : 96bb3b0
### ThumbLoaderThread :: setFileList() after wait
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
### ThumbLoaderThread :: setFileList ok
## OPEN FOLDER
## OPEN FOLDER ok
## updateLabels
## updateLabels ok
######ThumbLoaderThread :: forever 2 : 96bb3b0
CHECK <0>
######ThumbLoaderThread :: forever : 96bb3b0
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
TIME  8 
MyDirModelThread :: run
## OPEN FOLDER done
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
### ThumbLoaderThread :: setFileList(203)
ThumbLoaderThread :: stop()
### ThumbLoaderThread :: stop() ok
######ThumbLoaderThread :: forever 2 : 96bb3b0
CHECK <202>
### START 203
######### TIME ==> 0
######ThumbLoaderThread :: start : 202
### ThumbLoaderThread :: setFileList ok
MyView::set /home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg
101  Unregistered schema namespace URI
BrowserWindow :: updateMenu()
### BrowserWindow :: finish
101  Unregistered schema namespace URI
LOAD INFO </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg>
## MyTabWidget :: resizeEvent : 1280 955
### MyBitmapView (96f9df0) :: resizeEvent 641 844
## BROWSER RESIZE: 1280 955
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
###### LOAD BITMAP </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg>
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
## BitmapLoadThread :: load 160 128
###### LOAD BITMAP </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg>
LOAD BITMAP </home/serge/Pictures/Wallpapers/backgroud.py>
GFF :: LoadThumbnail : 2
ThumbLoaderThread - ADD into DB (20858)
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
###### onChildrenChecked 2 <Wallpapers>
###### onChildrenChecked 1 <gals-3d>
###### onChildrenChecked 0 <Anime>
###### onChildrenChecked 23 <Templates>
###### onChildrenChecked 21 <Share>
###### onChildrenChecked 17 <Phone>
###### onChildrenChecked 4 <Desktop>
###### onChildrenChecked 1 <bluetooth>
## MyView::onLoaded </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg> </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg> </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg> (0)
## MyView::onLoaded ok
### resetViewport (96f9df0)  ==> 641 844  (641 512) 0 0
Create Tree : File
Create Tree : Image
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
## BitmapLoadThread :: load 1280 1024
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI### ThumbLoaderThread :: setFirstItemToLoad
### ThumbLoaderThread :: setFirstItemToLoad ok

101  Unregistered schema namespace URI
## MyView::onLoaded </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg> </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg> </home/serge/Pictures/Wallpapers/__before______by_hitmanx3z-d3ht703.jpg> (1)
## MyView::onLoaded ok
101  Unregistered schema namespace URI
### resetViewport (96f9df0)  ==> 641 844  (641 512) 0 0
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
SIZE : 0 90  (-1)
SIZE : 0 65  (-1)
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
101  Unregistered schema namespace URI
TIME ==> 1038
######ThumbLoaderThread :: forever : 96bb3b0
BrowserWindow :: updateMenu()

Я в скриптах ничего не понимаю) но мне кажется что в первой строчке берётся путь, где запущен скрипт и подставляется потом в dirname.
Кавычки тогда вроде как вполне логично стоят. Не?
 

yura_n

  • Гость
У вас вывод дает не скрипт, а сама программа. Можно скрипт, который вы запускаете, завернуть еще в один, тогда вывод должен отправиться в /dev/null. Что-то вроде:
#!/bin/sh
path_to_xnview/xnview.sh &>/dev/null
 

Оффлайн Sergei_Alekseev

У вас вывод дает не скрипт, а сама программа

Это понятно)
Если сделать "скрипт на скрипт", то аутпут всё равно выдаёт точно так же. >:(

А вот xnview &>/dev/null - тишина

Сообщение объединено: 05 Августа 2013, 02:42:00
Всё, я сделал по аналогии с mc.ext файлом:
#!/bin/sh
dirname="$(dirname "$(readlink -e "$0")")"
export LD_LIBRARY_PATH="$dirname"/lib
export QT_PLUGIN_PATH="$dirname"/lib
"$dirname"/XnView "$@" >/dev/null 2>&1 &

 8)
« Последнее редактирование: 05 Августа 2013, 02:42:00 от Sergei_Alekseev »
 

yura_n

  • Гость
Если сделать "скрипт на скрипт", то аутпут всё равно выдаёт точно так же. >:(
Специально сейчас повторил. Ничего никуда не выдает. И не может. Не вешайте лапшу на уши. Или разберитесь в синтаксисе.
 

Оффлайн Sergei_Alekseev

Не вешайте лапшу на уши.

Вы что, съели что-то несвежее?



« Последнее редактирование: 05 Августа 2013, 06:47:27 от qupl »
 

yura_n

  • Гость
Вы что, съели что-то несвежее?
Я ничего не съел. И даже скачал этот XnView. Смотрите сам. Ваш скрипт, даже изменять почти не стал.

Запускаю его:

Как видите есть вывод.
Теперь скрипт для скрипта:

Запускаю его:

Нет вывода.
« Последнее редактирование: 05 Августа 2013, 06:09:39 от yura_n »
 

Оффлайн Sergei_Alekseev

Этой программе - xnview 1.70 - чёрт знает сколько лет  :o
xnview mp 0.61 свежая.
 

yura_n

  • Гость
Этой программе - xnview 1.70 - чёрт знает сколько лет  :o
Да мне она не нужна. Я ее скачал только для того, чтобы было к чему применить ваш скрипт. На мой взгляд geeqie в качестве просмотрщика изображений не хуже, и менее избыточна.
 

Оффлайн Sergei_Alekseev

Да причём тут нужна/не нужна. Она работает абсолютно по-другому.
Я в курсе geeqie и других вьюеров.
Вопрос снят с повестки дня.
 

yura_n

  • Гость
Да причём тут нужна/не нужна. Она работает абсолютно по-другому.
Ладно, поехали по новой.  ;D xnview mp 0.61.
Оригинальный скрипт:

Запускаю его.

Есть вывод.
Теперь скрипт на скрипт.

Запускаю его.

Нет вывода.
Всего этого можно было и не делать, но вы же не поверите.  ;D Смысл в том, что для каждого нового скрипта запускается и новая копия интерпретатора, вот его вывод и сбрасывается в /dev/null.
« Последнее редактирование: 05 Августа 2013, 16:44:12 от yura_n »
 

Оффлайн Sergei_Alekseev

Вы, сударь, как-то странно себя ведёте. Вы видели мой скриншот с аутпутом после команды test.sh? Чему я должен поверить?
Обратите внимание что аутпут у меня появляется как бы после нового промпта, а у вас ожидает завершения программы.
 

Теги:
     

    [Решено] После обновления не монтируются юсб-накопители и не соединяется NM

    Автор warezzzok

    Ответов: 8
    Просмотров: 2885
    Последний ответ 04 Сентября 2014, 01:11:03
    от warezzzok
    [РЕШЕНО] Failed to fetch при обновлении репов

    Автор Demitry

    Ответов: 9
    Просмотров: 2031
    Последний ответ 21 Марта 2016, 15:34:34
    от qupl
    [Решено] Нет команды pwck

    Автор prestidigitateur

    Ответов: 2
    Просмотров: 1747
    Последний ответ 09 Сентября 2011, 16:17:52
    от prestidigitateur
    [Решено]Странная проблема с Apache + *.php + mount

    Автор Synthex

    Ответов: 7
    Просмотров: 1521
    Последний ответ 05 Июня 2018, 12:53:12
    от Synthex
    [Решено] Отключение истории введенных команд

    Автор Роман846

    Ответов: 1
    Просмотров: 2332
    Последний ответ 28 Мая 2012, 20:45:21
    от rayanAyar