Esta página mostra como fazer uma cópia de segurança dos dados de uma máquina local para o Cloud Storage através das Cloud Tools for PowerShell. Ao contrário da maioria dos recursos, as Cloud Tools for PowerShell oferecem duas formas de aceder aos recursos do Cloud Storage: os cmdlets e um fornecedor do PowerShell.
O fornecedor permite-lhe aceder a contentores e objetos de armazenamento como um sistema de ficheiros, através dos comandos do sistema de ficheiros que já conhece. No entanto, o fornecedor tem algumas limitações. Nem todos os nomes de objetos legais são convertidos em caminhos de fornecedores legais. Não pode usar o fornecedor para gerir ACLs. Para estes casos avançados, pode usar os cmdlets. Consulte a referência de cmdlet do Cloud Tools for PowerShell para saber mais sobre os cmdlets do Cloud Storage.
A carregar dados
Os dados no Cloud Storage estão organizados em contentores. Crie um novo contentor da seguinte forma:
Cmdlets
Use o cmdlet New-GcsBucket
para criar um novo contentor:
$bucket = "my-gcs-bucket" New-GcsBucket $bucket
Fornecedor
Os contentores são pastas na raiz do gs:\
drive. A criação de um novo item nesse nível cria um novo conjunto.
cd gs:\ $bucket = "my-gcs-bucket" mkdir $bucket
Carregue ficheiros para um contentor
Pode carregar um único ficheiro ou um diretório completo para o seu contentor:
Cmdlets
Use New-GcsObject
. Isto requer um contentor de destino e um nome de objeto
como parâmetros. A origem do conteúdo do novo objeto de armazenamento depende do conjunto de parâmetros que usar.
Pode carregar o conteúdo de um ficheiro local para o Cloud Storage usando o parâmetro -File
e especificando um caminho do ficheiro. Em alternativa, pode transmitir o conteúdo do objeto como uma string através do pipeline do PowerShell ou usar o parâmetro -Value
.
Pode carregar um diretório completo do disco local para o
Cloud Storage através do parâmetro -Folder
e especificando o
caminho da pasta. Se não quiser que a pasta seja carregada diretamente para a raiz do contentor do Cloud Storage, use -ObjectNamePrefix
para especificar um prefixo que será aplicado a todos os objetos carregados.
# Upload the folder LogFiles and its content to the root of the widget bucket. New-GcsObject -Bucket "widget" -Folder "C:\inetpub\logs\LogFiles" # Upload the folder LogFiles and its content to directory Test in the widget bucket. New-GcsObject -Bucket "widget" -Folder "C:\inetpub\logs\LogFiles" -ObjectNamePrefix "Test"
Fornecedor
Use New-Item
. Requer um caminho para o item que está a ser criado. Pode ser um caminho absoluto ou um caminho relativo. O conteúdo do novo objeto de armazenamento pode ser especificado como uma string para o parâmetro -Value
ou especificando um caminho de ficheiro para o parâmetro -File
.
New-Item gs:\my-gcs-bucket\new-object -File $file
O fragmento seguinte carrega um diretório completo do disco local para o Cloud Storage.
cd $folder $files = Get-ChildItem -Recurse $data = @() foreach ($file in $files) { $objectPath = $file | Resolve-Path -Relative $data += @{file = $file; objectPath = $objectPath} } cd gs:\my-gcs-bucket foreach($element in $data) { Write-Host "`t${$element.objectPath}" New-Item $element.objectPath -File $element.file }
Pesquisar dados
Pode pesquisar dados com cmdlets ou com o fornecedor através dos cmdlets de pesquisa de ficheiros comuns.
Cmdlets
Pode pesquisar os objetos de um contentor através de Get-GcsObject
. Isto pode ser
útil quando combinado com o cmdlet Out-GridView
para visualizar os seus dados:
Get-GcsObject $bucket | Select Name, Size | Out-GridView
Fornecedor
Pode usar Get-ChildItem
ou um dos respetivos alias: dir
, ls
ou gci
.
Pode usar o parâmetro -Recurse
para procurar em todas as pastas lógicas:
cd gs:\my-gcs-bucket ls -Recurse
Dados de leitura
Para ler dados através do fornecedor, use o cmdlet Get-Content
padrão.
Em alternativa, use o cmdlet Read-GcsObject
.
Cmdlets
Para ler o conteúdo de um objeto do Cloud Storage, use o cmdlet Read-GcsObject
. Por predefinição, lê o conteúdo do objeto como uma string e escreve-o no pipeline do PowerShell. Em alternativa, pode especificar o parâmetro -OutFile
para transferir o conteúdo do objeto para o disco local:
Read-GcsObject $bucket "timestamp.txt" | Write-Host Read-GcsObject $bucket "logo.png" ` -OutFile "$Env:UserProfile\pictures\logo.png"
Fornecedor
Para ler o conteúdo de um objeto do Cloud Storage, use o cmdlet Get-Content
ou um dos respetivos alias: cat
, gc
ou type
.
cd gs:\my-gcs-bucket cat my-object-name
Eliminar dados
Para eliminar dados através do fornecedor, use o cmdlet Remove-Item
padrão.
Em alternativa, use o cmdlet Remove-GcsObject
.
Cmdlets
Para remover dados no Cloud Storage, use o cmdlet:Remove-GcsObject
Get-GcsObject $bucket | Remove-GcsObject
Fornecedor
Para remover dados no Cloud Storage, use o cmdlet Remove-Item
ou um dos respetivos alias del
, rm
, erase
:
cd gs:\my-gcs-bucket rm my-object-name