Получил ответ от полезного канала IRC #systemd .
/sys/class/net
Все устройства, указанные там под именем systemd-networkd, будут их использовать.
Это проблема, с которой я столкнулся при запуске скриптов через cron. Я не уверен, применимо ли это здесь, но попробуйте добавить свой путь в начало скрипта. Что-то вроде...
#!/bin/bash
PATH="/your/path"
...
Когда вы пишете сценарий, он обычно не использует ваши псевдонимы.
Вы можете явно указать команду в своем скрипте:
#!/bin/sh
oTools="/home/user/folder/oTools-cli"
for file in./folder/*
do
${oTools} upload "${file}"
done
Вы столкнулись как минимум с двумя проблемами:
Псевдонимы не раскрываются, когда оболочка не интерактивна, если только параметр оболочки expand_aliases
не установлен с помощью shopt
.
.bashrc
обычно содержит конфигурацию для интерактивных оболочек, а не для скриптов (, то есть не -интерактивных оболочек ).
Есть несколько решений:
# Set expand_aliases option and add the alias (in your script)
shopt -s expand_aliases
alias oTools="/home/user/folder/oTools-cli"
# Create a function instead of an alias (in your script)
oTools() { /home/user/folder/oTools-cli "$@"; }
# Add /home/user/folder to your PATH (in your.profile)
PATH="/home/user/folder:$PATH"