鉴于UNIX类型环境中的开发人员需要基本的shell命令和脚本 - 我说的是圆形,小型商店,devops类型 - Powershell是Windows的等价物吗?
我有一台Windows 7计算机正在运行,但我在UNIX环境中进行所有开发,无论是在Mac上还是在使用VMWare的Linux客户机上.我本身不是一个系统管理员,但我在这里和那里填写一个.UNIX中的Grep,sed,awk,文件结构,网络等都是根深蒂固的.我多年来一直在使用这些工具.几十年,甚至.
我最近在Windows机器上鬼混了.我的习惯是下到命令行来完成工作,而不是通常与Windows使用相关的所有指向和点击狂热.但是凭借Powershell,我完全迷失了.对我来说没有任何意义.
值得学习吗?这甚至是Windows民间的工作方式吗?这一切都会突然改变吗?成为Powershell大师有优势吗?
我正在尝试下载一个大文件,然后使用Ruby将该文件发布到REST端点.该文件可能非常大,即可以存储在内存中,甚至可以存储在磁盘上的临时文件中.我一直在尝试使用Net :: HTTP,但只要他们做我正在尝试做的事情,我就可以使用任何其他库(rest-client等).
这是我试过的:
require 'net/http'
source_uri = URI("https://example.org/very_large_file")
source_request = Net::HTTP::Get.new(source_uri)
source_http = Net::HTTP.start(source_uri.host, source_uri.port, use_ssl: source_uri.scheme == 'https')
target_uri = URI("https://example2.org/rest/resource")
target_request = Net::HTTP::Post.new(target_uri)
target_http = Net::HTTP.start(target_uri.host, target_uri.port, use_ssl: target_uri.scheme == 'https')
source_response = source_http.request(source_request)
target_request.body = source_response.read_body
target_request.content_type = 'multipart/form-data'
target_response = target_http.request(target_request)
Run Code Online (Sandbox Code Playgroud)
我想要发生的是source_response.read_body返回一个流,然后我可以以块的形式传递给target_request.