PowerShell系列(五):PowerShell通过脚本方式运行笔记

目录

一、四种执行方式介绍

1、当前文件夹运行命令

2、直接指定完整文件路径执行

3、通过cmd命令直接执行

4、通过Windows计划任务执行PowerShell脚本

二、通过脚本方式执行命令的优势


往期回顾

PowerShell系列(一):PowerShell介绍和cmd命令行的区别

PowerShell系列(二):PowerShell和Python之间的差异介绍

PowerShell系列(三):PowerShell发展历程梳理

PowerShell系列(四):PowerShell进入交互环境的三种方式

PowerShell 是一种用于操作 系统的命令行界面,支持跨平台,它提供了许多功能来自动化和优化各种任务。PowerShell 是由微软官方开发的,并作为 Windows Server 操作系统的一部分提供。 使用 PowerShell,您可以执行许多运维操作,例如创建、编辑、查看和删除文件和文件夹,管理用户和计算机,配置网络设置,运行系统命令,自动化测试和部署等。今天继续给大家分享PowerShell系列教程。

上一篇文章讲解了Powershell通过交互环境运行命令的相关知识,今天给大家介绍实际工作当中使用最频繁的方式——通过脚本运行,简单来说就是和咱们实际编写代码一样,先编写代码,然后通过开发工具执行。同样的为了实现PowerShell脚本的保存、方面在别的服务器迁移,一般都是先编写脚本,然后通过脚本文件执行完成相应的运维任务。

PowerShell通过脚本方式的好处主要有以下几条:

  • 可以将常见的运维操作封装成脚本,方便后续的重复使用和维护。
  • 可以使用 PowerShell 的强大功能来自动化和优化服务器的各种任务。
  • 可以将 PowerShell 脚本与其他软件和工具集成,从而提高工作效率。
  • 可以使用 PowerShell 脚本来执行任何类型的操作,包括系统管理、安全、性能优化和自动化测试等场景。
  • 可以通过 PowerShell 脚本来定义和执行自定义命令和操作,以满足特定的需求和环境。

总得来说使用 PowerShell 脚本可以让您更加高效地管理和操作系统,提高工作效率并增强系统的可维护性。下面给大家详细介绍一下。

案例脚本

首先打开 WindowPowerShell ISE 开发环境新建一个test.ps1,脚本内容如下:

$arr1=1..10 #定义一个1~10的数组 
$arr1  #打印数组

一、四种执行方式介绍

1、当前文件夹运行命令

进入存放脚本文件的命令,然后执行:

.\psl1脚本文件

我的脚本文件存放在F盘的桌面目录执行命令如下:

F  #进入F盘
cd 桌面 #进入桌面文件夹
 .\test.ps1  #运行命令

2、直接指定完整文件路径执行

完整psl1脚本文件

F:\桌面\test.ps1

具体如下图

3、通过cmd命令直接执行

需要加关键字PowerShell才可以识别是执行的PowerShell命令。

命令格式:PowerShell  ps1脚本文件完整路径

4、通过Windows计划任务执行PowerShell脚本

PowerShell 脚本默认无法执行,需要先修改 PowerShell 执行策略(ExecutionPolicy)命令如下:

 set-ExecutionPolicy RemoteSigned

说明:关于PowerShell的策略问题,下篇文章会进行详细讲解。

输入上面的命令后会提示我们如何对策略进行修改,这里我们选择y,然后按下回车键。

首先打开Windows任务计划程序

创建一个计划任务

打开创建计划任务常规选项卡,然后输入名称和描述,具体如下图:

切换到触发器选项卡,设置每五分钟执行一次。

 切换到操作选项卡,新建操作设置执行脚本文件

powershell

添加参数 

 F:\桌面\test.ps1

然后就可以正常运行该计划了。

二、通过脚本方式执行命令的优势

  1. 方便迁移,比如在之前工作经验积累下来的运维脚本,可以保存下来。如果业务场景用的到的话,直接文件拷贝过来就可以运行。
  2. 提升脚本的可读性。针对一些复杂的运维脚本,如果通过交互命令方式,如果命令非常多且比较复杂的话,那么脚本可读性就大打折扣了。建议针对复杂运维命令的话,注释一定要写的比较清晰,方便后续使用和运维。
  3. 脚本编写效率大大提高。交互执行的方式会存在脚本思维的跳跃。不利于脚本整体逻辑的把控。
  4. 定时任务的实现。通过脚本方式可以很方便的脚本文件周期重复性执行,这样就达到了定时任务的目的。

猜你喜欢

转载自blog.csdn.net/xishining/article/details/131116560