Portál AbcLinuxu, 5. května 2025 15:05
micro /opt/myscriptpokud ale vytvořím soubor třeba 'test' a do něj vložím 'micro /opt/myscript', uložím, nastavím soubor pro spuštění a soubor spustím, dostanu chybu
./test: line 1: micro: command not foundProč? Díky
Řešení dotazu:
#!/bin/bash
echo $PATH
micro /opt/myscript
#konec
type micro
, which micro
.
$ echo 'echo $SHELL' > /tmp/program $ chmod +x /tmp/program $ /tmp/program /bin/bash $Vytvoril som si uzivatela test a dal du vychodiskovy /bin/sh. A pod tym uzivatelom spustil ten skript. Zaver: Ak nie je v skripte urceny shell, skript sa spusta vychodiskovym shellom uzivatela.
# napr. vychodiskovy shell cat /etc/passwd|grep $USER:|tr ':' ' ' | awk '{print $7}'To plati na Debian testing.
V souboru .bashrc mám
alias micro='/opt/micro'
Dáš to i do toho skriptu, nebo budeš spouštět celou cestou /opt/micro.A to prosím nejde vložit někam, kde to bude dostupné i tomu scriptu? Prostě dostupné všem? Editor nano žádný problém nemá, ten funguje úplně všude.
Mimochodem většinou se nedávají binárky přímo do /opt (na to je /usr/local/bin), v /opt bývají adresáře s jednotlivými programy a až ty obsahují spustitelné soubory.To nevím, já ten editor micro neprogramoval a tam se to automaticky nainstalovalo, neptalo se to na cestu. :(
A to prosím nejde vložit někam, kde to bude dostupné i tomu scriptu? Prostě dostupné všem? Editor nano žádný problém nemá, ten funguje úplně všude.Ano. Riesenia maju svoje plusy/minusy. 1. moznost - Ako root zadaj:
ln -s /usr/local/bin/micro /opt/micro2. moznost - pridat, ze v /opt su spustitelne programy (prida pre akt. uzivatela):
echo 'export PATH=$PATH:/opt' >> ~/.bashrc
Nerozumím vůbec tomu co jste psali ale může mi prosím někdo poradit jak to opravit? V souboru .bashrc mám(*) takže keď napíšeš "micro" tak shell na vstup nedostal program, ale alias. Pre alias platí: https://linux.die.net/man/1/bash :alias micro='/opt/micro'
Aliases are not expanded when the shell is not interactive, unless the expand_aliases shell option is set using shopt (see the description of shopt under SHELL BUILTIN COMMANDS below).(**) keď upravuješ PATH, tak treba dbať na to, pre koho ho upravuješ. Či pre seba, alebo pre všetkých na systéme. To, ako to urobiť pre všetkých na systéme závisí od distribúcie.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.