Powershell 定义文本
使用引号可以定义字符串,如果想让自己定义的字符串原样输出,可以使用单引号。
|
1
2
|
$text='$fei $(tai) $env:windir 飞苔博客 (20+2012)'$text |
输出:
$fei $(tai) $env:windir 飞苔博客 (20+2012)
如果想让自己的定义的字符中的变量被内容替换,表达式被执行可以使用双引号.
|
1
2
3
|
$site="飞苔博客 Powershell博客"$text="$site $(get-date) $env:windir"$text |
输出:
飞苔博客 Powershell博客 08/25/2012 18:49:41 C:windows
文本中的特殊字符
如果文本放置在一个闭合的双引号中,Powershell解释器回去寻找特殊字符.在这方便主要有两种特殊字符,一个是变量的前缀“$”,一个是反引号“·”位于数字键1左边。
处理变量
将变量放在字符串中,输出时变量会被替换成变量本身的值或者内容。如果将表达式放置在字符串中,并且使用的格式如“$(expression)”,表达式也会被执行,并被替换成表达式执行的输出。
|
1
2
3
4
5
6
|
"系统目录位于:$env:windir""默认安装程序目录位于:$env:ProgramFiles""机器名为:$env:computername""当前日期:$(get-date)""1GB=$(1gb/1kb)KB" |
输出:
“系统目录位于:$env:windir”
“默认安装程序目录位于:$env:ProgramFiles”
“机器名为:$env:computername”“当前日期:$(get-date)”
“1GB=$(1gb/1kb)KB”
Powershell转义字符
在其它编程语言中喜欢将反斜杠作为转义字符,但是在Powershell中扮演转义字符角色的不是反斜杠,而是反引号“`”字符串中的反引号,会对紧跟随其后的字符进行特殊处理。例如下面的,在一个字符串中输出双引号,和换行符。
|
1
2
3
4
5
6
|
#使用单引号闭合字符串输出双引号'The site of my blog is"www.mossfly.com"'#使用转义字符输出双引号“My blog site is`"www.mossfly.com`""#在字符串中输出换行符“The site of my blog is `"www.mossfly.com`",`n飞苔博客" |
输出:
The site of my blog is”www.mossfly.com”
My blog site is”www.mossfly.com”
The site of my blog is “www.mossfly.com”,
飞苔博客
其它的转义字符如下表
| Powershell转义字符表 | |
| 转义字符 | 描述 |
| `n | 换行符 |
| `r | 回车符 |
| `t | 制表符 |
| `a | 响铃符 |
| `b | 退格符 |
| `’ | 单引号 |
| `” | 双引号 |
| `0 | Null |
| “ | 反引号本身 |
Here strings 定义多行文本
@“字符串”@格式定义多行文本,尤其是较长的文本,再好不过了
|
1
2
3
4
5
6
|
@"这首诗用来评价陶渊明的诗歌再好不过了一语天然万古新,豪华落尽见真淳。南窗白日羲皇上,未害渊明是晋人。"@ |
这里要注意开始和结束的标记必须另起一行。
用户交互
如果要提示用户输入可以使用read-host
PS E:> $name=Read-Host "请输入您的用户名"
请输入您的用户名: Mosser Lee
PS E:> "您输入的用户名为:$name"
您输入的用户名为:Mosser Lee
只是有一点Read-Host存储的字符串使用的单引号闭合,也就是说不会自动解析变量,不过可以通过ExpandString方法解析,例如:
PS E:> $inputPath=Read-Host "请输入文件路径"
请输入文件路径: $env:windir
PS E:> $inputPath
$env:windir
PS E:> $ExecutionContext.InvokeCommand.ExpandString($inputPath)
C:windows
但是如果想通过Read-Host接受敏感数据,比如密码,可以使用-asSecureString选项,不过这样读取到的数据为SecureString,及为加过密后的数据,当然你可以将密码转换成普通文本.
PS E:> $pwd=Read-Host -AsSecureString "请输入密码"
请输入密码: ******
PS E:> $pwd
System.Security.SecureString
PS E:> [Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR($pwd))
abc123
询问用户名和密码
如果你想授权一个用户需要提供用户凭据,可以使用Get-Credential命令,该命令会弹出一个安全对话框,一旦用户输入完毕,就会返回一个Credential对象包含用户名和密码
PS E:> $cre=Get-Credential MossserLee
PS E:> $cre
UserName Password
-------- --------
MossserLee System.Security.SecureString
Powershell 定义文本的更多相关文章
- CSS属性定义 文本修饰 边框效果 背景修饰
一.CSS属性定义1.css颜色表示方法[重点]rgb(红绿蓝3个颜色通道 强度值为0-255)rgb(0,0,0)rgba(alpha a是透明度 值为0-1)rgba(123,123,123,0) ...
- powershell 将文本转换成表格的还有一种方式
$text=" 1 梦幻西游 216406 2014-01-21 资料片 2 炉石传说 15905 2014-01-24 公測 3 新大话西游 214465 2002-08-01 公測 4 ...
- 用powershell实现自动化操作
每天登录OA太繁琐,公司OA又只允许用IE,本身写chrome扩展水平也不高,更搞不懂selenium 既然是windows下工作,当然还得微软的东东.研究了几天,才发现用powershell就很方便 ...
- Powershell --在线学习
介绍和安装 自定义控制台 快速编辑模式和标准模式 快捷键 管道和重定向 Powershell交互式 数学运算 执行外部命令 命令集 别名 通过函数扩展别名 执行文件和脚本 Powershell变量 定 ...
- PowerShell 在线教程 4
PowerShell 在线教程 4 认识Powershell 介绍和安装 自定义控制台 快速编辑模式和标准模式 快捷键 管道和重定向 Powershell交互式 数学运算 执行外部命令 命令集 别 ...
- Powershell快速入门
Powershell快速入门 来源: https://blog.csdn.net/u011054333/article/details/72567590 https://blog.csdn.net/u ...
- 【189】◀▶ PowerShell 系统学习
参考网站如下: PowerShell 中文博客 PowerShell 博客——叹为观止 Mater-PowerShell 通过 PowerShell 编写脚本 Power ...
- SVG 文本
该部分为四个主要部分: 1. <text>和<tspan>标签详解 2. 文本水平垂直居中问题 3. <textpath>让文本在指定路径上排列 4 ...
- [HTML/HTML5]4 使用文本
4.1 组织文本 在已经采用结构化方式将页面划分为多个关键内容区域(content area)并添加相应的标题之后,就可以进一步对这些内容区域中的文本进行组织. 4.1.1 段落 p元素的具体功能 ...
随机推荐
- CSS常用操作-对齐
index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...
- Chrome真机调试步骤
确保手机端打开USB调试选项 手机安装chrome 手机访问网页(或者打开APP,或者使用夜深模拟器打开APP或者网页) PC chrome打开chrome://inspect/#devices 点击 ...
- 博客换了,比较少用这个博客(http://loid.cf)
新博客地址: http://loid.cf/
- lesson3.1:java公平锁和非公平锁及读写锁
关于这四种锁的各自情况,网上有很多文章做了介绍,本不想单独开章节介绍,本章只介绍这四种锁的一些源码特点及注意事项. demo 源码:https://github.com/mantuliu/javaAd ...
- android 绘图
在main.xml文件中代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...
- coco2d-html5制作弹弓射鸟第一部分---橡皮筋
一.写在前面的话 最近在学习cocos2d-html5方面的知识,一直想从事游戏方面的工作,自己也找了好多资料.网上关于cocos2d-html5的教程真的不多,也只有自己摸索,慢慢看示例代码.由于本 ...
- boost::pool与内存池技术
建议看这个链接的内容:http://cpp.winxgui.com/cn:mempool-example-boost-pool Pool分配是一种分配内存方法,用于快速分配同样大小的内存块, ...
- 第一篇博客关于Log4net的配置记录
说明:本程序演示如何利用log4net记录程序日志信息.log4net是一个功能著名的开源日志记录组件.利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括M ...
- django: db - display
本讲介绍数据在页面中的呈现,内容很简单,就是嵌套循环在模板中的使用. 一,修改 csvt03/urls.py: from django.conf.urls import patterns, inclu ...
- 《第一行代码》学习笔记38-服务Service(5)
1.希望服务一旦启动就立刻去执行某个动作,可以将逻辑写在onStartCommand()方法里. 2.onCreate()和onStartCommand()的区别:onCreate()方法是在服务第一 ...