[TOC]
Powershell调用静态方法
https://www.cnblogs.com/micro-chen/p/5941659.html
在PowerShell中是否有类似于 IsNullOrEmpty 的内置函数,用于检查字符串是否为空或空
PS C:\Users\WeiyiGeek> [string]::IsNullOrEmpty(“ss”)
False
[TOC]
Powershell调用静态方法
https://www.cnblogs.com/micro-chen/p/5941659.html
在PowerShell中是否有类似于 IsNullOrEmpty 的内置函数,用于检查字符串是否为空或空
PS C:\Users\WeiyiGeek> [string]::IsNullOrEmpty(“ss”)
False
[TOC]
Powershell调用静态方法
https://www.cnblogs.com/micro-chen/p/5941659.html
在PowerShell中是否有类似于 IsNullOrEmpty 的内置函数,用于检查字符串是否为空或空
PS C:\Users\WeiyiGeek> [string]::IsNullOrEmpty(“ss”)
False
1 | #时间加减 |
描述: 这是.NET中的一个数学类里面定义很多实用的静态方法,其类路径是System.Math
;
参考路径: https://docs.microsoft.com/zh-cn/dotnet/api/system.math?view=net-5.0
可用静态方法列表:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199# 字段
E #表示自然对数的底,它由常数 e 指定。
PI #表示圆的周长与其直径的比值,由常数 π 指定。
Tau #表示一转中的弧度数,由常量 τ 指定。
# 方法
Abs(Decimal)
返回 Decimal 数字的绝对值。
Abs(Double)
返回双精度浮点数字的绝对值。
Abs(Int16)
返回 16 位有符号整数的绝对值。
Abs(Int32)
返回 32 位有符号整数的绝对值。
Abs(Int64)
返回 64 位有符号整数的绝对值。
Abs(SByte)
返回 8 位有符号整数的绝对值。
Abs(Single)
返回单精度浮点数字的绝对值。
Acos(Double)
返回余弦值为指定数字的角度。
Acosh(Double)
返回双曲余弦值为指定数字的角度。
Asin(Double)
返回正弦值为指定数字的角度。
Asinh(Double)
返回双曲正弦值为指定数字的角度。
Atan(Double)
返回正切值为指定数字的角度。
Atan2(Double, Double)
返回正切值为两个指定数字的商的角度。
Atanh(Double)
返回双曲正切值为指定数字的角度。
BigMul(Int32, Int32)
生成两个 32 位数字的完整乘积。
BigMul(Int64, Int64, Int64)
生成两个 64 位数的完整乘积。
BigMul(UInt64, UInt64, UInt64)
生成两个无符号 64 位数的完整乘积。
BitDecrement(Double)
返回小于 x 的下一个最小值。
BitIncrement(Double)
返回大于 x 的下一个最大值。
Cbrt(Double)
返回指定数字的立方根。
Ceiling(Decimal)
返回大于或等于指定的十进制数的最小整数值。
Ceiling(Double)
返回大于或等于指定的双精度浮点数的最小整数值。
Clamp(Byte, Byte, Byte)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(Decimal, Decimal, Decimal)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(Double, Double, Double)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(Int16, Int16, Int16)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(Int32, Int32, Int32)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(Int64, Int64, Int64)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(SByte, SByte, SByte)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(Single, Single, Single)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(UInt16, UInt16, UInt16)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(UInt32, UInt32, UInt32)
返回限制在 min 和 max 范围内(含首尾)的 value。
Clamp(UInt64, UInt64, UInt64)
返回限制在 min 和 max 范围内(含首尾)的 value。
CopySign(Double, Double)
返回一个值,它具有 x 的大小和 y 的符号。
Cos(Double)
返回指定角度的余弦值。
Cosh(Double)
返回指定角度的双曲余弦值。
DivRem(Int32, Int32, Int32)
计算两个 32 位有符号整数的商,并通过输出参数返回余数。
DivRem(Int64, Int64, Int64)
计算两个 64 位有符号整数的商,并通过输出参数返回余数。
Exp(Double)
返回 e 的指定次幂。
Floor(Decimal)
返回小于或等于指定小数的最大整数值。
Floor(Double)
返回小于或等于指定双精度浮点数的最大整数值。
FusedMultiplyAdd(Double, Double, Double)
返回 (x * y) + z,舍入为一个三元运算。
IEEERemainder(Double, Double)
返回一指定数字被另一指定数字相除的余数。
ILogB(Double)
返回指定数字以 2 为底的整数对数。
Log(Double)
返回指定数字的自然对数(底为 e)。
Log(Double, Double)
返回指定数字在使用指定底时的对数。
Log10(Double)
返回指定数字以 10 为底的对数。
Log2(Double)
返回指定数字以 2 为底的对数。
Max(Byte, Byte)
返回两个 8 位无符号整数中较大的一个。
Max(Decimal, Decimal)
返回两个十进制数中较大的一个。
Max(Double, Double)
返回两个双精度浮点数字中较大的一个。
Max(Int16, Int16)
返回两个 16 位有符号的整数中较大的一个。
Max(Int32, Int32)
返回两个 32 位有符号的整数中较大的一个。
Max(Int64, Int64)
返回两个 64 位有符号的整数中较大的一个。
Max(SByte, SByte)
返回两个 8 位有符号的整数中较大的一个。
Max(Single, Single)
返回两个单精度浮点数字中较大的一个。
Max(UInt16, UInt16)
返回两个 16 位无符号整数中较大的一个。
Max(UInt32, UInt32)
返回两个 32 位无符号整数中较大的一个。
Max(UInt64, UInt64)
返回两个 64 位无符号整数中较大的一个。
MaxMagnitude(Double, Double)
返回两个双精度浮点数字中的较大值。
Min(Byte, Byte)
返回两个 8 位无符号整数中较小的一个。
Min(Decimal, Decimal)
返回两个十进制数中较小的一个。
Min(Double, Double)
返回两个双精度浮点数字中较小的一个。
Min(Int16, Int16)
返回两个 16 位有符号整数中较小的一个。
Min(Int32, Int32)
返回两个 32 位有符号整数中较小的一个。
Min(Int64, Int64)
返回两个 64 位有符号整数中较小的一个。
Min(SByte, SByte)
返回两个 8 位有符号整数中较小的一个。
Min(Single, Single)
返回两个单精度浮点数字中较小的一个。
Min(UInt16, UInt16)
返回两个 16 位无符号整数中较小的一个。
Min(UInt32, UInt32)
返回两个 32 位无符号整数中较小的一个。
Min(UInt64, UInt64)
返回两个 64 位无符号整数中较小的一个。
MinMagnitude(Double, Double)
返回两个双精度浮点数字中的较小值。
Pow(Double, Double)
返回指定数字的指定次幂。
Round(Decimal)
将小数值舍入到最接近的整数值,并将中点值舍入到最接近的偶数。
Round(Decimal, Int32)
将小数值舍入到指定数量的小数位,并将中点值舍入到最接近的偶数。
Round(Decimal, Int32, MidpointRounding)
将小数值舍入到指定数量的小数位,并为中点值使用指定的舍入规则。
Round(Decimal, MidpointRounding)
将小数值舍入到最接近的整数,并为中点值使用指定的舍入规则。
Round(Double)
将双精度浮点值舍入到最接近的整数值,并将中点值舍入到最接近的偶数。
Round(Double, Int32)
将双精度浮点值舍入到指定数量的小数位,并将中点值舍入到最接近的偶数。
Round(Double, Int32, MidpointRounding)
将双精度浮点值舍入到指定数量的小数位,并为中点值使用指定的舍入规则。
Round(Double, MidpointRounding)
将双精度浮点值舍入到最接近的整数,并为中点值使用指定的舍入约定。
ScaleB(Double, Int32)
返回有效计算的 x * 2^n。
Sign(Decimal)
返回表示十进制数符号的整数。
Sign(Double)
返回一个整数,该整数表示双精度浮点数字的符号。
Sign(Int16)
返回表示 16 位带符号整数的整数。
Sign(Int32)
返回表示 32 位带符号整数的整数。
Sign(Int64)
返回一个整数,该整数指示 64 位带符号整数的符号。
Sign(SByte)
返回一个整数,该整数指示 8 位带符号整数的符号。
Sign(Single)
返回一个整数,该整数表示单精度浮点数字的符号。
Sin(Double)
返回指定角度的正弦值。
Sinh(Double)
返回指定角度的双曲正弦值。
Sqrt(Double)
返回指定数字的平方根。
Tan(Double)
返回指定角度的正切值。
Tanh(Double)
返回指定角度的双曲正切值。
Truncate(Decimal)
计算一个数字的整数部分。
Truncate(Double)
计算指定双精度浮点数的整数部分。
基础示例:1
2
3
4
5
6
7
8
9
10
11
12
13
14# 1.简单使用求绝对值,三角函数,
[Math]::PI # 3.14159265358979
[Math]::Abs(-10.89) # 10.89
[Math]::Sin([Math]::PI/2) # 1
[Math]::Pow(2, 10) # 1024
# 四舍五入取整,向上、向下取整
[Math]::Round("3.495") # 3
[Math]::Round("3.595") # 4
[Math]::Round("3.5956485",3) # 3.596 (指定小数点后的几位)
[Math]::Ceiling("3.199999") # 4
[Math]::floor("3.999999") # 3
# - 计算一个数字的整数部分。
[Math]::Truncate(2012.7765) # 2012
描述:.NET支持成千上万的类型,有了这些类型可以做许多事情,幸运的是Powershell恰好支持这些类型。
1 | #1.例如使用System.Net.IPAddress类将字符串IP地址转换成一个IPAddress实例 |
.NET中的类型定义在不同的程序集中,首先得知道当前程序已经加载了那些程序集;
AppDomain类可以完成这个需求,因为它有一个静态成员CurrentDomain,CurrentDomain中有一个GetAssemblies()方法。1
2
3
4
5
6
7
8
9
10
11
12
13PS > [AppDomain]::CurrentDomain
PS > [AppDomain]::CurrentDomain.GetAssemblies()
GAC Version Location
--- ------- --------
True v4.0.30319 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll
搜索指定类型
查询每个程序集中的方法可是使用GetExportedTypes() 方法。因为许多程序集中包含了大量的方法,在搜索时最好指定关键字。下面的代码演示如何查找包含”environment”关键字的类型。
PS > [AppDomain]::CurrentDomain.GetAssemblies() | ForEach-Object { $_.GetExportedTypes() } | Where-Object { $_ -like $searchtext } | ForEach-Object { $_.FullName }
搜索方法
下面的例子演示如何根据指定关键字”Address”,搜索方法。
[AppDomain]::CurrentDomain.GetAssemblies() | ForEach-Object { $_.GetExportedTypes() } | ForEach-Object { $_.getmembers() } | Where-Object { $_.isStatic} | Where-Object { $_ -like $searchtext } | ForEach-Object { "[{0}]::{1} --> {2}" -f $_.declaringtype, $_.toString().SubString($_.toString().IndexOf(" ")+1), $_.ReturnType }
1 | 查看以下System.Environment类的所有静态方法。 |
1 | # 方式1.根据类型创建实例 |
$dllByte=[System.IO.File]::ReadAllBytes(‘D:\Code\mosser\PStips.NET —dll’)
[System.AppDomain]::CurrentDomain.Load($dllByte)
1 | 新版的.NET 中有动态类型,不能直接通过GetExportedTypes()调用,把它屏蔽掉就行了 |
描述:
统计指定目录下的文件数量
[System.IO.Directory]::GetFiles(“D:\Work\Data\Photo\gzkz-2019\1950”, ‘*’, ‘AllDirectories’).Count
你好看友,欢迎关注博主微信公众号哟! ❤
这将是我持续更新文章的动力源泉,谢谢支持!(๑′ᴗ‵๑)
温馨提示: 未解锁的用户不能粘贴复制文章内容哟!
方式1.请访问本博主的B站【WeiyiGeek】首页关注UP主,
将自动随机获取解锁验证码。
Method 2.Please visit 【My Twitter】. There is an article verification code in the homepage.
方式3.扫一扫下方二维码,关注本站官方公众号
回复:验证码
将获取解锁(有效期7天)本站所有技术文章哟!
@WeiyiGeek - 为了能到远方,脚下的每一步都不能少
欢迎各位志同道合的朋友一起学习交流,如文章有误请在下方留下您宝贵的经验知识,个人邮箱地址【master#weiyigeek.top】
或者个人公众号【WeiyiGeek】
联系我。
更多文章来源于【WeiyiGeek Blog - 为了能到远方,脚下的每一步都不能少】, 个人首页地址( https://weiyigeek.top )
专栏书写不易,如果您觉得这个专栏还不错的,请给这篇专栏 【点个赞、投个币、收个藏、关个注、转个发、赞个助】,这将对我的肯定,我将持续整理发布更多优质原创文章!。
最后更新时间:
文章原始路径:_posts/编程世界/Powershell/Cmdlet/编程脚本类命令/PS常用.NET框架类库记录和使用命令.md
转载注明出处,原文地址:https://blog.weiyigeek.top/2021/4-21-549.html
本站文章内容遵循 知识共享 署名 - 非商业性 - 相同方式共享 4.0 国际协议