-
Windows PowerShell每周提示(10):在我们的数组里有什么?
1. 查找值
$arrColors = "blue", "red", "green", "yellow", "white", "pink", "orange", "turquoise"
$arrColors –contains "black" => 输出 FALSE
$arrColors -notcontains "violet" => 输出 True
2. 大小写敏感:执行大小写敏感检查通过使用-ccontains及-cnotcontains操作符
3. $arrColors –like "bl*" : 使用-like操作符及通配符(*)来检查数组中是否包含以字母bl开头的任意值.
4. 数组排序: $arrColors = $arrColors | Sort-Object
我们把我们的数组(
$arrColors
)通过管道传递给
Sort-Object cmdlet
。当
Sort-Object
完成对数组内项目的排序时,然后我们将
这个新的已排序的列表赋值回
$arrColors
-
Windows PowerShell每周提示(12):统计文本文件信息
1. 统计文本信息:
Get-Content c:/scripts/alice.txt |
Measure-Object –word –line –character
Get-Content c:/scripts/alice.txt | Measure-Object –word –line –character -ignorewhitespace
2.对变量也适用:
$a = "This is a two-line value `n stored in a variable."
$a | Measure-Object –word –line -character
- Windows PowerShell每周提示(13):格式化日期和时间
1. 快速格式化
限定符
|
格式
|
样本输出
|
d
|
短日期
|
8/30/2007
|
D
|
长日期
|
Thursday, August 30, 2007
|
f
|
完整日期时间(长日期及短时间)
|
Thursday, August 30, 20
|
F
|
FullDateTimePattern
(长日期长时间)
|
Thursday, August 30, 2007 11:19:59 AM
|
g
|
常规(短日期短时间)
|
8/30/2007 11:20 AM
|
G
|
常规(短日期长时间)
|
8/30/2007 11:20:24 AM
|
m, M
|
MonthDayPattern
|
August 30
|
o
|
Round-trip date/time pattern
|
[Text]
|
2007-08-30T11:18:49.0312500-07:00
|
RFC1123Pattern
|
Thu, 30 Aug 2007 11:21:36 GMT
|
s
|
SortableDateTimePattern
(基于
ISO 8601
)
使用当地时间
|
2007-08-30T11:20:36
|
t
|
短时间
|
11:20 AM
|
T
|
长时间
|
11:20:42 AM
|
u
|
UniversalSortableDateTimePattern
使用通用时间显示格式
|
2007-08-30 11:21:50Z
|
U
|
完整日期时间(长日期长时间)使用通用时间
|
Thursday, August 30, 2007 6:21:52 PM
|
y, Y
|
YearMonthPattern
|
August, 2007
|
Get-Date -format d
Get-Date -format D
2. 自定义格式化
描述
| |
d. %d
|
月中的某一天。一位数的日期没有前导零。指定“
%d
”如果格式化样式没有同其它格式化样式组合在一起
|
dd
|
月中的某一天。一位数的日期有一个前导零
|
ddd
|
周中某天的缩写名称
|
dddd
| |
h, %h
|
12
小时制的小时。一位数的小时数没有前导零。指定“
%h
”如果格式化样式没有同其它格式化样式组合在一起
|
hh
|
12
小时制的小时。一位数的小时数有前导零。
|
H, %H
|
24
小时制的小时。一位数的小时数没有前导零。
指定“
%H
”如果格式化样式没有同其它格式化样式组合在一起
|
HH
|
24
小时制的小时。一位数的小时数有前导零。
|
m, %m
|
分钟。一位数的分钟数没有前导零。
指定“
%m
”如果格式化样式没有同其它格式化样式组合在一起
|
mm
|
分钟。一位数的分钟数有一个前导零。
|
M, %M
|
数字月份。一位数月份前没有前导零。指定“
%M
”如果格式化样式没有同其它格式化样式组合在一起
|
MM
|
数字月份。一位数月份前有前导零
|
MMM
|
月份的缩写名称,在
AbbreviatedMonthNames
中定义
|
MMMM
|
月份的完整名称,在
MonthNames
中定义
|
s, %s
|
秒。一位数的秒数没有前导零。指定“
%s
”如果格式化样式没有同其它格式化样式组合在一起
|
ss
|
秒。一位数的秒数有一个前导零。
|
t, %t
| |
tt
| |
y, %y
|
不包含纪元的年份。如果不包含纪元的年份小于
10
,则显示不具有前导零的年份。指定“
%y
”如果格式化样式没有同其它格式化样式组合在一起
|
yy
|
不包含纪元的年份。如果不包含纪元的年份小于
10
,则显示具有前导零的年份。
|
yyy
|
三位数年份。如果年份小于
100
,
则显示具有前导零的年份。
|
yyyy
|
包括纪元的四位或五位数的年份(取决于所使用的日历)。对于不够四位数的年份,将使用前导零填充。泰国佛历和朝鲜历都有五位数年份;如果使用的是五位数的日历,选择
“yyyy”
模式的用户将会看到所有五位数,而且这五位数不会带前导零。例外情况:对于日本历和台湾日历,始终看起来都像用户选择的是
“yy”
方式。
|
%
c
|
其中
c
是格式模式(如果单独使用)。也就是说,若要单独使用格式模式
“d”
、
“f”
、
“F”
、
“h”
、
“m”
、
“s”
、
“t”
、
“y”
、
“z”
、
“H”
或
“M”
,请指定
“%d”
、
“%f”
、
“%F”
、
“%h”
、
“%m”
、
“%s”
、
“%t”
、
“%y”
、
“%z”
、
“%H”
或
“%M”
。
如果格式模式与原义字符或其他格式模式合并,则可以省略
“%”
字符。
|
/
c
|
其中
c
是任意字符。照原义显示字符。若要显示反斜杠字符,请使用
“//”
。
|
Get-Date -format M.d.yyyy => 7.19.2009
Get-Date -format “yyyy MMM d” =>
2007 Aug 30
3. uformat
Get-Date -uformat %j //
%j
限定符返回是年中的第几天
Get-Date -uformat %V //
%V
返回是年中的第几周。注意V是大写的。
4.
Get-Date cmdlet
始终能被使用在任何日期上
Get-Date 3/13/2008 -uformat %j //
2008
年
3
月
13
日是一年中的第几天?