Форум русскоязычного сообщества Ubuntu


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Куда положить пользовательские скрипты?  (Прочитано 10017 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AssHunter

  • Автор темы
  • Новичок
  • *
  • Сообщений: 47
    • Просмотр профиля
Доброго времени сообществу!
Не так давно поставил себе 10.04, потихоньку сижу настраиваю и столкнулся с вопросом, куда положить свои скрипты?
Хотелось бы чтобы они находились в пользовательской папке ~/.scripts но я так понял что тогда баш их не воспринимает. ~/bin не очень устраивает из-за видимости, т.е. хотелось бы чтоб папка была скрытой.
Посоветуйте пожалуйста как быть.

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
« Последнее редактирование: 06 Июля 2010, 11:45:35 от easy2002 »
Tempora mutantur et nos mutantur in illis

Оффлайн Nestor

  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
~$ PATH=${PATH}:~/.scripts

« Последнее редактирование: 06 Июля 2010, 12:08:45 от Nestor »


If you have paranoia, it doesn't mean that they do not hunt for you

Оффлайн Sly_tom_cat

  • Don't worry, be happy!
  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 12130
  • Xubuntu 22.04
    • Просмотр профиля
    • Github
Я не совсем понял - в чем проблемма то? Как это "bash не воспринимает"?

Скрипт и в домашнем фолдере и в подфолдере спокойно выполнится (без PATH) если при запуске к нему указать полный путь. Сам пользую пару скриптиков, которые валяются прямо в хоме. Когда нужны, говорю в консоли ~/{имя скрипта} и все прекрасно работает. Ну или, если терминал уже в хоме то ./{имя скрипта} Можно и на кнопки или хот-кеи повесить их запуск - только путь прописать уже от корня придется.

зы: может ТС просто забыл флажек execute у скрипта разрешить?
« Последнее редактирование: 06 Июля 2010, 12:08:04 от Sly_tom_cat »
Индикатор для Yandex-Disk: https://forum.ubuntu.ru/index.php?topic=241992
UEFI-Boot - грузимся без загрузчика: https://help.ubuntu.ru/wiki/uefiboot

Оффлайн AssHunter

  • Автор темы
  • Новичок
  • *
  • Сообщений: 47
    • Просмотр профиля
ну какбы в том-то и дело, что полный путь прописывать каждый раз неудобно. Тем более,а если потом придется добавить еще скриптов уже не в home, а куда-то еще? Запоминать каждый раз пути? :)
да и из хоума делать скриптопомойку не хочется.

а способ с PATH прекрасно работает :) Спасибо.

Оффлайн Nestor

  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
Исполняемые скрипты прежде всего будут просматриваться в этих папках.
Если добавить каталог в переменную $PATH , то он там останется только до конца сессии


If you have paranoia, it doesn't mean that they do not hunt for you

Оффлайн AssHunter

  • Автор темы
  • Новичок
  • *
  • Сообщений: 47
    • Просмотр профиля
ну это само собой, потому они и называются Пользовательские скрипты, пока пользователь работает, работают и скрипты, а другого и не требуется :)


Оффлайн Nestor

  • Активист
  • *
  • Сообщений: 347
    • Просмотр профиля
Ты не понял, каталог придётся прописывать снова, поэтому вполне подойдёт то,  что предлагает Sly_tom_cat
Для запуска скрипта (исполняемого) достаточно будет команды  ./имя_скрипта
« Последнее редактирование: 06 Июля 2010, 12:33:58 от Nestor »


If you have paranoia, it doesn't mean that they do not hunt for you

Оффлайн unihorn

  • Активист
  • *
  • Сообщений: 519
  • Пылкий правдоруб ( (С) openmindead :) )
    • Просмотр профиля
~/bin не очень устраивает из-за видимости, т.е. хотелось бы чтоб папка была скрытой.

Можно сделать не видимой (~/.bin), и подправить скрипт ~/.bash_profile (заменив в нем bin на .bin (либо, заменив bin на твой ~/.scripts :) )).
« Последнее редактирование: 06 Июля 2010, 12:35:01 от unihorn »
Мир ищу, где волки агнцам служат,
И нету слуг верней.
Где слезы никого не душат. Не ведают смертей.

Оффлайн Molibden

  • Участник
  • *
  • Сообщений: 184
    • Просмотр профиля
Можно задать алиас.
gedit ~/.bashrc
Ищем строку # some more ls aliases
После этой строки пишем, что хотим, типа:
alias mem='ps aux |grep -v grep |grep '
alias vasia='/bin/bash /home/user/vasia.sh'

Или, что душа пожелает.
Чтоб заработало перезапустить открытую консоль.

ЗЫ Просто, еще один способ).


Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Куда положить пользовательские скрипты?
« Ответ #10 : 06 Июля 2010, 12:35:58 »
Можно сделать не видимой (~/.bin), и подправить скрипт ~/.bash_profile (заменив в нем bin на .bin (либо, заменив bin на твой ~/.scripts :) )).
+1, так и делаю:
$ tail -3 ~/.profile
if [ -d "$HOME/.bin" ] ; then
    PATH="$HOME/.bin:$PATH"
fi

Оффлайн AssHunter

  • Автор темы
  • Новичок
  • *
  • Сообщений: 47
    • Просмотр профиля
Re: Куда положить пользовательские скрипты?
« Ответ #11 : 06 Июля 2010, 12:37:12 »
Nestor, в твоем способе да, он хорош когда надо подключить папку скриптов, скажем с флешки или еще откуда-то, а я прописал PATH в ~/.bashrc (как советовал easy2002) теперь не надо каждый раз вводить руками.
Впринципе, я думаю что если прописать эту строчку в файле /etc/bash.bashrc то при создании пользователя он по умолчанию будет иметь доступ к папке со скриптами. Довольно удобно для администрирования :)

Цитировать
Можно сделать не видимой (~/.bin), и подправить скрипт ~/.bash_profile (заменив в нем bin на .bin).

Да, можно и так, но 1й способ мне, честно скажем, больше понравился. и практического применения в нем больше, хотя впринципе одно и тоже :)
« Последнее редактирование: 06 Июля 2010, 12:39:01 от AssHunter »

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Куда положить пользовательские скрипты?
« Ответ #12 : 06 Июля 2010, 13:08:31 »
Реплика.
В ~/.profile по умолчанию уже есть

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

Надо только у себя создать директорию bin и в нее складывать скрипты.
ЗЫ. Зачем делать эту директорию скрытой ? Это мне кажется лишним.
« Последнее редактирование: 06 Июля 2010, 13:16:13 от alexander.pronin »

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net
Re: Куда положить пользовательские скрипты?
« Ответ #13 : 06 Июля 2010, 13:58:56 »
Зачем делать эту директорию скрытой ? Это мне кажется лишним.
Оно выбивается из общего стиля стандартных каталогов внутри домашнего. :)

Оффлайн alexander.pronin

  • Старожил
  • *
  • Сообщений: 2539
    • Просмотр профиля
Re: Куда положить пользовательские скрипты?
« Ответ #14 : 06 Июля 2010, 14:06:08 »
Да, это аргумент. :idiot2:

 

Страница сгенерирована за 0.044 секунд. Запросов: 23.