Все, что мне нужно, чтобы запустить xrandr -o normal
при запуске и продолжать получать
Bad Interpretation error - No such file or directory exists.
Вот мой скрипт:
#!bin/bash
xrandr -o normal
Я проверил местоположение и его определенно там.
bin/bash
испытывает недостаток в продвижении /
и таким образом относительный путь. Это относится к bash
в bin
подкаталог того, везде, где Вы в настоящее время. Обычно это просто не существует, как в этом случае. Когда это существует, это не может быть корректный файл.
Кажется, что Вы предназначаете полный путь. Поскольку steeldriver прокомментировал, пишущий продвижение /
в пути решит эту проблему, гарантируя что bin
компонент пути всегда относится к bin
каталог, находящийся непосредственно в /
.
#!/bin/bash
Вы не должны пытаться использовать относительный путь в shebang/hashbang (#!
) строка. В этом случае кажется, что Вы не попытались сделать так, но только что закончили тем, что делали так случайно.
Иногда люди пытаются сделать это, пишущий вещи как #!python3
с надеждой это PATH
поиск произойдет, как он делает при выполнении команды в оболочке. Это не происходит. (#!/usr/bin/env python3
может использоваться в тех случаях потому что env
поиски команды PATH
.)
В отличие от этого, с символьными ссылками, цели которых являются относительными путями, где цель разрешена относительно местоположения, где символьная ссылка находится, относительный путь в a #!
строка разрешена относительно что бы ни случилось, чтобы быть текущим рабочим каталогом, когда скрипт запущен. Дело обстоит так, даже когда относительный путь содержит компоненты разнообразного пути, разделенные a /
(например, bin/bash
). То местоположение обычно не будет тем же каждым разом, когда скрипт запущен, и это - очень часто не каталог, содержащий сценарий.
Таким образом, в то время как символьные ссылки с относительными путями часто полезны, хижины с относительными путями являются на практике всегда ошибкой.