I have downloaded screenfetch in one directory I make.
mkdir ~/screenfetch
wget -O screenfetch 'https://raw.github.com/KittyKatt/screenFetch/master/screenfetch-dev'
chmod +x screenfetch
./screenfetch
It sucessfully works inside this dir. Then I wanted to execute it in wide system.
sudo cp -r screenfetch /usr/local/bin
But it does not work when I execute it elsewhere (except in ~/screenfetch
and /usr/local/bin
). This is what I get
$ screenfetch -s
Command 'screenfetch' not found, but can be installed with:
sudo apt install screenfetch
The output of file /usr/local/bin/screenfetch
:
/usr/local/bin/screenfetch: directory
How do I solve this issue?
Shell ищет исполняемые файлы и скрипты, которые находятся в папках, указанных в ПУТЬ
. bin
- это сокращение от двоичных файлов, и он должен содержать исполняемые файлы (которые также могут быть сценариями), а не папки, содержащие исполняемые файлы. Рассмотрите возможность перемещения исполняемых файлов из папки выборки экрана. Короче говоря, в настоящее время в вашей системе сценарий выборки экрана находится в / usr / local / bin / screenfetch /
, но он должен быть в / usr / local / bin
.
В качестве альтернативы , вы можете добавить / usr / local / bin / screenfetch /
в PATH
, что заставит оболочку также заглядывать внутрь этой папки.