如何使 /etc/profile.d 中的脚本在同一目录中的所有其他脚本之后运行?

如何使 /etc/profile.d 中的脚本在同一目录中的所有其他脚本之后运行?

我正在 Ubuntu 上为需要多个部分的应用程序编写安装程序脚本,例如

  • 安装特定的g++版本,将脚本放入profile.d中,重新启动
  • 为某些硬件安装驱动程序,删除旧脚本,将新脚本放入 profile.d 中,重新启动
  • 设置环境变量,从 profile.d 中删除脚本,添加新脚本,编译源代码(c++),
  • 设置环境变量脚本 int profile.d

在安装的每个部分,我都会将脚本复制到 /etc/profile.d目录,以便在从 ssh 登录时运行。但我不知道该脚本是否在同一目录中的所有其他脚本之后运行(例如,驱动程序可能已将自己的脚本放在那里,我的脚本可能需要工作)。

如何确保 profile.d 中的脚本作为最后一步运行?是关于文件名或创建日期还是其他什么?

答案1

只需对脚本进行编号,例如 01-firstscript.sh、99-lastscript.sh,如果在 ls -l 中显示在最后,则完成。

如果文件不应该被编号(通过发行版安装),只需将您自己的脚本的名称更改为 zzz-001.sh、zzz-002.sh、zzz-003.sh 等......

相关内容