SUDO _*переменные окружения не устанавливаются при использовании sudo su-

awkвсегда пытается интерпретировать $<something>как значение поля (, например.$0-вся запись,$3-третье поле,$NF-последнее значение поля)

Передать имя каталога через переменную:

awk -v dir="$TRANSDIR" '/FILE-HDRPQ/{x=substr ($0,11,6)}
       NR>1{print $0 > dir"/"x"_prchgrpt.txt";}' "$TRANSDIR/$prcfile"
1
17.12.2020, 07:28
1 ответ

Попробуйте без -i, и переменные должны пройти для вас.

Если это не сработает, вы можете попросить их указать переменные в командной строке? Возможно, это не идеально, но это дало бы пользователям необходимую гибкость.

ie.  sudo -i -u joe SUDO_GID=4361 SUDO_UID=4361 SUDO_USER=rbhanot /bin/ksh

Если это слишком сложно для запоминания пользователями, вы можете добавить для него псевдоним в их профиль.bash _.

ie.  alias myroot="sudo -i -u joe SUDO_GID=4361 SUDO_UID=4361 SUDO_USER=rbhanot /bin/ksh"

Затем они просто набирают «myroot», и он запускает команду sudo, как написано.

0
18.03.2021, 22:42

Теги

Похожие вопросы