Perl Shell脚本和自动化指南
我目前正在编写一些脚本,这些脚本可以自动化很多东西,而且大小相当中等。我已经开始遵循某些方法,使我的脚本具有通用性和可移植性,如:Perl Shell脚本和自动化指南,perl,shell,scripting,powershell,Perl,Shell,Scripting,Powershell,我目前正在编写一些脚本,这些脚本可以自动化很多东西,而且大小相当中等。我已经开始遵循某些方法,使我的脚本具有通用性和可移植性,如: 计划脚本的管理员登录 绝对路径的使用 配置文件的使用 开发时使用写主机,部署(调试)时切换到日志记录 我最感兴趣的是知道是否有任何标准的脚本技术和指导方针,旨在使脚本开发人员的生活变得简单。我同时使用perl和powershell,因此非常欢迎并感谢您提供更一般化的建议 感谢您提前提供的帮助。 steeluser这有点宽泛,我相信是主观的。不过,我做了一些脚本编
- 计划脚本的管理员登录
- 绝对路径的使用
- 配置文件的使用
- 开发时使用写主机,部署(调试)时切换到日志记录
steeluser这有点宽泛,我相信是主观的。不过,我做了一些脚本编写工作,可以提供一些我从经验中学到的东西
DATA\u ROOT
的变量,您可以修改它,然后让所有例程引用${DATA\u ROOT}/resources/images
等内容。一个${PROGRAM\u ROOT}也很有用,这样您就可以对套件的多个安装进行测试等调用并在失败时中止(fn,arg0,arg1,…)
李>
if(FLAG){do_something}或者{do_something}
会杀死你。让您的脚本做一件事并做好它,如果您愿意,您可以编写包装器,根据需要委托给这些脚本(为了更好的用户体验)李>
foo
,你所要做的就是在某个地方创建一个名为foo
的目录,它就会跟踪它。你不需要修改很多东西,真正想要跟踪指标的经理可以根据需要创建目录李>
这些是我头脑中能想到的要点。 < P>只是我认为好的一些实践:
- 只要在运行时捕捉到绝对路径,就可以使用绝对路径。看这个
- 用于配置文件的一些易于处理的格式,如xml或yaml
- 不要使用
,使用更好的写入主机
,或者更好的是,实现一个自定义功能,允许您根据配置文件上的设置在控制台/日志之间切换。更多细节请参见我的答案写入输出
编辑关于采用XML配置文件的注意事项 尽量使用XML,因为您的配置文件将包含一些设置,并且您将仅通过脚本来管理它
希望这有帮助
干杯当你说“使用绝对路径”时,你的意思是“你使用绝对路径”还是“你避免使用绝对路径”?前者容易导致不可移植性;后者是可移植性。我的意思是使用绝对路径更好。我之所以这样想,是因为我的脚本必须完美地工作,无论从哪里调用,都不会抛出错误。我不确定我是否理解它是如何导致不可移植性的。你能再详细说明一下吗?谢谢。这意味着每台机器都必须把所有东西放在同一个地方。一旦你想把脚本放在其他地方,或者没有空间放脚本,那么你的手上就有一个大问题。这对我来说很有意义,不要使用绝对路径。谢谢你的洞察力。你的观点都很好。我不知道为什么像if($productionmode-ne1){dont send mail}这样的东西会杀死我的脚本。您能详细说明一下吗?因为您的代码将完全被
if
和else
乱七八糟,难以阅读和维护。如果你有一个发送电子邮件的通知框架