Portál AbcLinuxu, 12. května 2025 13:59

Dotaz: Jak spustit existujcí script

11.8.2015 20:15 Orlando
Jak spustit existujcí script
Přečteno: 490×
Odpovědět | Admin
Ahoj, poradí mi prosím někdo jak spustit nějaký soubor vlastním příkazem ? Mám script s příponou 'py' ve složce /root, když ho chci spustit, zadám /root/soubor.py. Jak bych mohl spustit tento script kdekoliv jen napsáním třeba 'ddd' ? Děkuji

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

11.8.2015 20:21 sonicpp | skóre: 7
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zkus ho nahrát do nějakého adresáře, kde OS hledá spustitelné soubory (ty zjistíš např pomocí "echo $PATH").
11.8.2015 22:16 teni
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud máš jako shell bash (je celkem rozšířený, tak třeba jo), mělo by zafungovat do ~/.bashrc souboru doplnit

alias ddd='/root/soubor.py'

A pustit nový shell. V něm už by to mělo fungovat.

A nebo tedy do nějakého adresáře z $PATH šoupnout ten soubor pod jménem ddd. Tedy třeba cp /root/soubor.py /usr/bin/ddd

V tom soubor.py pak asi bude dobré na prvním řádku doplnit:

#!/bin/python (podle toho, kde máš umístěn interpret python)
11.8.2015 23:15 nobody
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
jen par drobnosti ;)
kdyz alias, tak ho pridat do primo tomu urceneho souboru ~/.bash_aliases
kdyz do nejakeho adresare z $PATH, tak radeji k tomu urcenemu /usr/local/bin/
a prvni radek radeji #!/usr/bin/env python (prave aby se neresila cesta k python)
11.8.2015 23:30 lertimir | skóre: 64 | blog: Par_slov
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Také pár drobností. Do /usr/local/bin nakopírovat v případě je že celosystémový. Pokud je to jen skript roota tak do /root/bin. v závislosti jestli je to stabilní, nebo pracovní skripit bych volil nakopírovat (pro stabilní skript) nebo symbolicky nalinkovat pro pracovní verzi. Jaké adresáře jsou vyhledávány na programy v tazatelově distribuci lze najít třeba pomocí env | grep PATH.
12.8.2015 10:43 teni
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Díky. Já věděl, že to někdo doplní či vyšperkuje.
12.8.2015 12:52 Orlando
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Odpovědět | | Sbalit | Link | Blokovat | Admin
Děkuji, tak jsem to udělal takto ale stále to nejde

a) vytvořil soubor ~/.bash_aliases
b) do něj vložil alias ddd='/root/soubor.py'
c) do souboru /root/soubor.py jsem vložil #!/usr/bin/env python3.4
d) restartoval jsem server
e) napsal jsem ddd
root@debian:~# ddd
-bash: ddd: command not found
Co mám ještě špatně ? Děkuji
12.8.2015 13:13 NN
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Zaprve, podminka je, ze vychozi konfigurace v souboru .bashrc(muze se lisit podle distribuce) obsahuje nahrani aliasu ze souboru .bash_aliases. Pokud ne, pridej prikaz primo do .bashrc(do vyhrazene sekce, nebo na konec).

Zadruhe server restartovat nemusis, staci se bud odhlasit/prihlasit a nebo vyvolat novy shell prikazem bash atp.
12.8.2015 13:24 Orlando
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Děkuji, už to jde.
12.8.2015 13:45 Orlando
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
Aha, tak nejde, špatný terminál :-(

Napsalo mi to
root@debian:~# ddd
-bash: /root/soubor.py: Permission denied
to jsem povolil

ale píše to stále
root@debian:~# ddd
: No such file or directory
nevím co znamená ta dvojtečka, není tam ani žádný název.. tak fakt nevím :-(
13.8.2015 01:58 nobody
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
jeste porad jde kdyz ho ted pustis pomoci
/root/soubor.py
? pokud ne, co kdyz vratis to co jsi mel na prvnim radku predtim? pripadne jde/slo ti to pres
python3.4 /root/soubor.py
?
13.8.2015 01:35 nobody
Rozbalit Rozbalit vše Re: Jak spustit existujcí script
nebo muze pridat do ~/.bashrc sekci co ma distribuce ktera nahrani ze souboru ma ;)
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.