当前位置: 首页 > news >正文

网站程序开发的基本步骤汽车之家网站开发方案

网站程序开发的基本步骤,汽车之家网站开发方案,托福培训一对一,公众号 网站开发windows自定义powshell批处理脚本 前几天看到大神自定义批处理骚操作操作,觉得很有意思,本篇文章记录一下入门学习笔记。 PowerShell 是一种功能强大的脚本语言和命令行外壳,基于.NET Framework,广泛应用于 Windows 系统管理、自…

windows自定义powshell批处理脚本

前几天看到大神自定义批处理骚操作操作,觉得很有意思,本篇文章记录一下入门学习笔记。

PowerShell 是一种功能强大的脚本语言和命令行外壳,基于.NET Framework,广泛应用于 Windows 系统管理、自动化任务执行、系统配置等领域。

编写powershell脚本首先要找到系统默认寻找的脚本路径

  1. 获取配置路径
echo $PROFILE
#F:\文档\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

在F:\文档中创建WindowsPowerShell目录,再在该目录下创建Microsoft.PowerShell_profile.ps1文件

Microsoft.PowerShell_profile.ps1文件中就可以编写我们的脚本了,每次打开powershell都会加载该文件。

简单上手

#自定义不需要参数的命令
#function 命令 {命令内容}
function hi{Write-Host "hello world"
}
#自定义需要固定参数的命令
function ha(){param([string] $name)echo hello $name
}
#自定义不固定参数的命令
function hb(){echo hello $args
}

输出

在这里插入图片描述

文本编辑器:可以使用系统自带的记事本,也推荐使用专业的代码编辑器,如 Visual Studio Code,其具有丰富的插件支持,可提高 PowerShell 脚本的编写效率。

基本变量

  1. 变量
    • 变量以 $ 符号开头,例如 $name = "John",定义了一个名为 $name 的变量,并赋值为字符串 "John"
    • 变量的数据类型可以自动推断,也可以显式指定,如 [int]$age = 30,将 $age 定义为整数类型。
  2. 数据类型
    • 字符串:使用双引号 " " 或单引号 ' ' 表示,双引号内可以解析变量,单引号内则按字面输出
    • 整数:如 10-5 等。
    • 浮点数:如 3.14-2.5 等。
    • 数组:使用 @() 表示,例如 $arr = @(1, 2, 3, "a", "b")
    • 哈希表:使用 @{} 表示,例如 $hash = @{"key1" = "value1"; "key2" = 2}
  3. 运算符
    • 算术运算符+(加)、-(减)、*(乘)、/(除)、%(取余)。
    • 比较运算符-eq(等于)、-ne(不等于)、-gt(大于)、-lt(小于)、-ge(大于等于)、-le(小于等于)。
    • 逻辑运算符-and(与)、-or(或)、-not(非)。
  4. 语句块:使用 {} 表示语句块,例如在 if 语句、for 循环等结构中。

Write-Host:内置方法,输出一个字符串或变量

控制结构

条件控制

$num = 10
if ($num -gt 5) {Write-Host "数字大于 5"
} elseif ($num -eq 5) {Write-Host "数字等于 5"
} else {Write-Host "数字小于 5"
}

for循环

for ($i = 0; $i -lt 5; $i++) {Write-Host "当前循环次数:$i"
}

foreach循环

$arr = @(1, 2, 3)
foreach ($element in $arr) {Write-Host "数组元素:$element"
}

while循环

$count = 0
while ($count -lt 3) {Write-Host "当前计数:$count"$count++
}

函数

function Add-Numbers {param([int]$num1,[int]$num2)return $num1 + $num2
}
$sum = Add-Numbers -num1 5 -num2 3
Write-Host "两数之和:$sum"

函数参数:使用 param 关键字定义函数参数,参数可以指定数据类型。

文件操作

系统提供函数 Get-Conten -parh url:获取地址为url的文件内容并返回,如果url为"."表示当前所在路径

  1. 读取文件内容
$content = Get-Content -Path "C:\test.txt"
foreach ($line in $content) {Write-Host $line
}
  1. 写入文件内容
$text = "这是要写入文件的内容"
Set-Content -Path "C:\test.txt" -Value $text
  1. 追加内容到文件
$newText = "这是追加的内容"
Add-Content -Path "C:\test.txt" -Value $newText
  1. 重名名文件
#获取单个文件
$file = Get-Item -Path "C:\Users\Admin\Documents\test.txt"
Rename-Item -Path $file.FullName -NewName $newName

错误处理

  1. try-catch-finally 结构
try {# 可能会出错的代码$result = 10 / 0
} catch {Write-Host "发生错误:$($_.Exception.Message)"
} finally {Write-Host "无论是否发生错误,都会执行这里的代码"
}

数字与字符串相加

在 PowerShell 中,字符串和数字相加的结果取决于具体的情况。

字符串在前,数字在后

字符串在加法运算的左侧,数字在右侧时,PowerShell 会将数字转换为字符串,然后将两个字符串拼接起来。

$str = "结果是:"
$num = 10
$result = $str + $num
Write-Host $result
#结果是:10

数字在前,字符串在后

当数字在加法运算的左侧,字符串在右侧时,PowerShell 会尝试将字符串转换为数字,如果转换成功则进行加法运算,如果转换失败则会抛出异常。

$num = 5
$str = "10"
$result = $num + $str
Write-Host $result
#15

运行段代码时,PowerShell 无法将字符串 "abc" 转换为数字,会抛出异常。

$num = 5
$str = "abc"
$result = $num + $str

显式类型转换

为了避免意外的结果,你可以进行显式的类型转换。如果想将结果作为字符串拼接,可以使用 ToString() 方法将数字转换为字符串:

$num = 20
$str = "数值是 "
$result = $str + $num.ToString()
Write-Host $result

如果想将字符串转换为数字进行加法运算,可以使用相应的类型转换方法,例如 [int] 转换为整数:

$str = "25"
$num = 5
$result = [int]$str + $num
Write-Host $result

实战演练

**demo1:**定义一个命令,为当前目录所有指定后缀文件加上指定前缀

场景:批量为文件添加标识

function SetPreName(){param ([string] $preName,[string] $next)$oldName='*'+$next$files = Get-ChildItem -Path . -Filter $oldNameforeach($file in $files){[string]$newName = $preName + $file.NameRename-Item -Path $file.FullName -NewName $newName}
}  

demo2:定义一个命令,为当前目录所有指定后缀的文件批量命名,从001xxx,xxx对应文件数量.

function SetNumberName(){param([string] $next)$oldName='*'+$next$files = Get-ChildItem -Path . -Filter $oldName[int]$cnt=1[string]$newNameforeach($file in $files){if($cnt -gt 99){$newName=$cnt.ToString()+$next}elseif($cnt -gt 9){$newName='0'+$cnt.ToString()+$next}else{$newName='00'+$cnt.ToString()+$next}Rename-Item -Path $file.FullName -NewName $newName$cnt++}
}
http://www.dtcms.com/a/595782.html

相关文章:

  • 专业建设公司网站代做网站推广的公司哪家好
  • php体育网站模板罗湖商城网站设计价格
  • 怎么创建公司网站广告公司后期制作
  • 网站建设预算表wordpress登录不
  • 上海网站建设的意义wordpress 路由器
  • 网站建设 空间安全网站建设报价清单
  • 用虚拟机做网站服务器太原网页设计培训班
  • 什么网站做禽苗好的网站网站开发技术负责那些
  • 百度 移动网站优化深圳做网站找谁
  • 特种工建设网站河北省建设工程信息网站
  • 快彩网站开发网站建设哪里培训
  • 邯郸网站建设策划方案福田公司门口
  • win7用自己ip做网站自己做网站自己买服务器
  • html网站支付链接怎么做的优化模型
  • 深圳网站建设招聘网络营销的特点包含()。
  • 网站建设的商业目的北京微网站建设设计服务商
  • 网站建设课程体会怎么做加盟网站
  • 深圳深圳龙岗网站建设建立英语
  • 惠州网站制作工具苏州百度seo
  • 自己做网站需要的技术深圳比较好的公司
  • 怎么分析网站的外链建设情况商城网站建设专业公司
  • 上合建设网站企业网站seo怎么做知乎
  • 找个网站看看wordpress搬家乱码
  • 忻州集团网站建设网站备案平台查询系统
  • 现在一些产品网站开发用的啥框架建行网站关于我们
  • 南宁公司做网站微信小程序制作多少钱一个
  • 网站开发公司福建新网域名网站
  • 襄阳市建设工程质量监督站网站企业营销案例
  • 湖北网站建设哪家专业汕头市网站建设分站公司
  • 网站主机租用wordpress中文伪静态