文章目录(Table of Contents)
简介
这里介绍一下windows下powershell的一些使用方法. 因为最近在GitHub上看到有一个仓库中数据处理使用了powershell中的内容, 所以想着就看懂这个. 我想自己也是不需要会写, 能看到看懂即可.
下面就会记录一些关于powershell常用的操作和命令, 也是自己看到什么就记录什么.
常见操作与命令
文件名等操作
- gci是可以查看某个目录下的文件. 这里给出了对于一个文件不同操作的显示结果.
- ni -Path ./out -ItemType Directory -Force, 可以用来新建文件夹, ni=>new item
- foreach($f in gci ./ -File -Depth 4 *.pcap)
- {
- echo $f.BaseName # 不带文件后缀 vpn_vimeo_B
- echo $f.Name # 带文件后缀 vpn_vimeo_B.pcap
- echo $f.FullName # 文献完整路径
- echo $f.Length # 文件大小
- echo $f.count # 文件个数, 这里都是1
- echo "---"
- }
其中, 上面的代码运行结果会显示, 相应的解释都写在了后面.
- aim_chat_3a.pcap # 文件名, 不带后缀
- aim_chat_3a.pcap.pcap # 文件名, 带后缀
- G:\test\aim_chat_3a.pcap.TCP_131-202-6-26_13000_131-202-240-87_64722.pcap # 完整的文件路径
- 13303 # 文件大小, 13303bytes
- 1 # 文件夹内的文件数量
修改文件大小
在我那个项目里, 需要直接对文件的大小进行修改. 小于某个大小则在后面补0x00, 大于某个大小就直接截断. 下面是相应的操作.
- # 修改文件大小
- echo "change size"
- $TRIMED_FILE_LEN = 2000
- foreach($f in gci ./ -File -Depth 4 *.pcap)
- {
- $content = [System.IO.File]::ReadAllBytes($f.FullName) # 获取文件内容
- $len = $f.length - $TRIMED_FILE_LEN # 获得文件的长度
- if($len -gt 0) # 进行裁剪
- {
- $content = $content[0..($TRIMED_FILE_LEN-1)]
- }
- elseif($len -lt 0) # 进行补全
- {
- $padding = [Byte[]] (,0x00 * ([math]::abs($len)))
- $content = $content += $padding
- }
- Set-Content -value $content -encoding byte -path "new_$($f.Name)" # 保存新的文件
- }
可以看一下最终的效果, 填充后在后面补充了很多的0x00.
tree 操作
详细的内容可以参考这个官方文档: tree. 下面是一个简单的用法.
- tree [<Drive>:][<Path>] [/f] [/a]
详细的参数列表.
wget 的操作
在 PowerShell 中我们也可以使用 wget 进行下载,但是语法与 Linux 中有所不同。详细的使用方式如下所示(需要指定一下输出的文件):
- wget "https://github.com/cornerken/bert/archive/master.zip" -OutFile "master.zip"
参考资料,Windows powershell 使用wget 下载文件的代码格式
为 PowerShell 设置代理
- 设置代理:netsh winhttp set proxy 127.0.0.1:1080
- 取消代理:netsh winhttp reset proxy
- 查看代理:netsh winhttp show proxy
- 微信公众号
- 关注微信公众号
- QQ群
- 我们的QQ群号
评论