Terminálban kiadva az alábbi parancsot: opera-developer --version
megkapom a verziószámot.
No de ha ezt beteszem egy bash szkriptbe:
installed_version=`opera-developer --version`
installed_version=$(opera-developer --version)
installed_version="$(opera-developer --version)"
echo teleptett verzió - $installed_version
Egyszerűen nincs eredmény. Így reménytelen a frissítési mechanizmus. De már a telepítés során is hülyeségeket írt ki. Hogy nincs munkakönyvtár vagy valami. Holott a program elindul, működik.
- 1283 megtekintés
Hozzászólások
A parancs kimenete a stdout-ra megy?
- A hozzászóláshoz be kell jelentkezni
Ezt most nem értem. Melyik parancs? Mit írjak be hogy megadjam a választ?
KDE/konsole: parancs begépelve: opera-developer --version. eredmény: 52.0.2871.0
A szkript kimenete sehová nincs átirányítva. Ugyanezen szkriptben ha átírom a dolgokat mondjuk a firefox-ra, szépen működik.
Ennyi van benne:
#!/bin/bash
installed_version=`opera-developer -version`
echo telepített verzió4 - $installed_version
- A hozzászóláshoz be kell jelentkezni
s ha ezt próbálnád:
#!/bin/bash
installed_version=$(opera-developer --version 2>&1)
echo telepített verzió - $installed_version
akkor mi lesz?
- A hozzászóláshoz be kell jelentkezni
Nem $, hanem &. Azért nem válaszban írtam, hogy tudd javítani! ;)
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
Az egyik, amit írtak, de másra gyanakszom. Mondd, az az opera-developer hol van? Az elérési útja benne van a PATH környezeti változóban? Már akkor, amikor a scriptből futna. Mellesleg próbáld meg teljes elérési úttal a hivatkozást.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni
A kód:
#!/bin/bash -v
cd /usr/lib64/opera-developer/
ls opera-d*
installed_version=$(opera-developer --version)
echo telepített verzió1 - $installed_version
installed_version=$(opera-developer --version 2>&1)
echo telepített verzió2 - $installed_version
installed_version=$(vivaldi-snapshot --version)
echo telepített verzió-VS - $installed_version
installed_version=$(firefox --version)
echo telepített verzió-FF - $installed_version
A kimenet:
#!/bin/bash -v
cd /usr/lib64/opera-developer/
ls opera-d*
opera-developer
installed_version=$(opera-developer --version)
opera-developer --version
echo telepített verzió1 - $installed_version
telepített verzió1 -
installed_version=$(opera-developer --version 2>&1)
opera-developer --version 2>&1
echo telepített verzió2 - $installed_version
telepített verzió2 -
installed_version=$(vivaldi-snapshot --version)
vivaldi-snapshot --version
echo telepített verzió-VS - $installed_version
telepített verzió-VS - Vivaldi 1.15.1104.3 snapshot
installed_version=$(firefox --version)
firefox --version
echo telepített verzió-FF - $installed_version
telepített verzió-FF - Mozilla Firefox 58.0.2
- A hozzászóláshoz be kell jelentkezni
A PATH-ban mi van?
Szerintem próbáld ./opera... formában!
Illetve... a hibaüzenet hiánya arra utal, hogy valamit mégis megtalálhat... which opera-developer a szkriptben, mit mond?
+1: nincs valami exportálatlan környezeti változód, ami belepiszkálhat a futtatásba? Pl. LD_LIBRARY_PATH
- A hozzászóláshoz be kell jelentkezni
Semmi változás. which: /bin/opera-developer. Így is próbáltam.
opera-developer --version > opera-developer-version.txt
cat opera-developer-version.txt
Így sincs semmi.
Átnéztem a telepítési könyvtárat is. Hátha valami fájlba rejtették el a dolgokat. Nem találtam semmit.
Mérgemben feltettem a stabil Operát is. Az frankón működik ebben a formában. Ez valami belső gond lehet a developernél.
Nincs itt valaki regisztrált Opera fórumos?
+1 Ezt hogy ellenőrizzem? LD_LIBRARY_PATH
- A hozzászóláshoz be kell jelentkezni
+1: tökmindegy, mert felraktam én is és nálam is ezt produkálja:
opera-developer --version
v=$(opera-developer --version)
echo $v
Az első kiírja a verzióját, a második üres stringet ad vissza.
- A hozzászóláshoz be kell jelentkezni
A bináris csinálja, hogy ha nem terminál a kimenete, akkor nem ír ki semmit.
Próbáld ki, hogy opera-developer --help | less
A less nélkül kiír egy halom opciót, de ha ott a pipe és a less, akkor üres a kimenet.
Workaround (megoldásnak nem nevezném):
verzio=$(script -q -e -c 'opera-developer --version'
echo $verzio
Ötlet innen: https://stackoverflow.com/questions/1401002/trick-an-application-into-t…
- A hozzászóláshoz be kell jelentkezni
Igen. Ez bevált. Míg meg nem oldják, ez lesz. Köszi.
+1: Beraktam a fő szkriptbe, és ez lett a kimenet. Nem értem. Ugyanaz a szubrutin fut le.
Telepitett verzió: opera-stable-51.0.2830.40
Már a legújabb opera-stable-51.0.2830.40 verzió van feltelepítve.
Telepitett verzió: opera-developer-52.0.2871.0
Új verzió érhető el: opera-developer-52.0.2871.0
OVaction
Telepitett verzió: vivaldi-snapshot-1.15.1104.3
Már a legújabb vivaldi-snapshot-1.15.1104.3 verzió van feltelepítve.
Telepitett verzió: firefox-58.0.2
Már a legújabb firefox-58.0.2 verzió van feltelepítve.
- A hozzászóláshoz be kell jelentkezni
Talán az Asus-nál járt gyakorlaton a programozó? :)
Asus router fw csinálta egy időben, hogy az öt másodperce telepített verzióra is azt mondta, hogy van újabb :)
- A hozzászóláshoz be kell jelentkezni