首页 > 解决方案 > 如何重新加载配置文件?

问题描述

我正在创建一个我将放入的脚本/etc/profile.d/namescript.sh。它的作用是为history命令添加时间。脚本已经完成,但要执行我的更改,我必须关闭会话。

我知道这个source命令,如果我用它在脚本之外重新加载配置文件,它就可以工作,但如果我把它放在脚本里面,它就不行。

我的代码:

#!/bin/bash
   
FECHA_HORA="%d/%b/%Y %H:%M"
RUTA="/etc/profile.d"
PROOT="/etc/profile"
PUSER="$HOME/.profile"

if [[ ${UID} -ne 0 ]]; then
  echo "Debes ejecutar el script con permisos de admistrador: sudo ${0}"
  exit 1
fi

cat <<EOF> ${RUTA}/timeHistory.sh
export HISTTIMEFORMAT="${FECHA_HORA} " 
EOF

exec bash "$PROOT" && exec bash "$PUSER"

exit 0

我已经尝试在脚本中使用exec和使用source,但我无法让它工作,它只有在我关闭会话时才有效。这就是为什么我需要重新加载配置文件。

标签: linuxbashshell

解决方案


推荐阅读