En esta página, se muestra cómo hacer una copia de seguridad de los datos de una máquina local a Cloud Storage con Cloud Tools for PowerShell. A diferencia de la mayoría de los recursos, Cloud Tools for PowerShell proporciona dos formas de acceder a los recursos de Cloud Storage, los cmdlets y un proveedor de PowerShell.
El proveedor te permite acceder a los depósitos de almacenamiento y objetos como un sistema de archivos mediante los comandos del sistema de archivos con los que ya estás familiarizado. Sin embargo, el proveedor tiene algunas limitaciones. No todos los nombres de objetos legales se convierten en rutas de proveedores legales. No puedes usar el proveedor para administrar las LCA. Para estos casos avanzados, puedes usar los cmdlets. Consulta la referencia de cmdlet para Cloud Tools for PowerShell a fin de obtener más información sobre los cmdlets de Cloud Storage
Sube datos
Los datos en Cloud Storage se organizan en depósitos. Crea un bucket nuevo de la siguiente manera:
Cmdlets
Usa el cmdlet New-GcsBucket
para crear un bucket nuevo:
$bucket = "my-gcs-bucket" New-GcsBucket $bucket
Provider
Los depósitos son carpetas en la raíz de la unidad gs:\
. La creación de un elemento nuevo en ese nivel creará un bucket nuevo.
cd gs:\ $bucket = "my-gcs-bucket" mkdir $bucket
Sube archivos a un bucket
Puedes subir un solo archivo o un directorio completo a tu bucket:
Cmdlets
Usa New-GcsObject
. Esto requiere un bucket de destino y un nombre de objeto como parámetro. El origen del contenido del objeto de almacenamiento nuevo depende del conjunto de parámetros que uses.
Puedes subir el contenido de un archivo local a Cloud Storage, para ello usa el parámetro -File
y especifica una ruta de acceso al archivo. Como alternativa, puedes pasar el contenido del objeto como una string a través de la canalización de PowerShell o puedes usar el parámetro -Value
.
Puedes subir a Cloud Storage un directorio completo del disco local con el parámetro -Folder
y especificar la ruta de la carpeta. Si no quieres que la carpeta se suba directamente en la raíz del depósito de Cloud Storage, usa -ObjectNamePrefix
para especificar un prefijo que se aplicará a cada objeto subido.
# 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"
Provider
Usa New-Item
. Requiere una ruta de acceso al elemento que se está creando. Esta puede ser una ruta de acceso absoluta o relativa. El contenido del nuevo objeto de almacenamiento se puede especificar como una string al parámetro -Value
o especificando una ruta de acceso al archivo al parámetro -File
.
New-Item gs:\my-gcs-bucket\new-object -File $file
El siguiente fragmento sube un directorio completo desde el disco local a 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 }
Busca datos
Puedes buscar datos con cmdlets o con el proveedor a través de los cmdlets de búsqueda de archivos comunes.
Cmdlets
Puedes buscar a través de los objetos de un bucket mediante Get-GcsObject
. Esto puede ser útil cuando se combina con el cmdlet Out-GridView
para visualizar tus datos:
Get-GcsObject $bucket | Select Name, Size | Out-GridView
Provider
Puedes usar Get-ChildItem
o uno de sus alias: dir
, ls
o gci
.
Puedes usar el parámetro -Recurse
para buscar dentro de todas las carpetas lógicas:
cd gs:\my-gcs-bucket ls -Recurse
Lee datos
Para leer los datos a través del proveedor, usa el cmdlet estándar Get-Content
.
Como alternativa, puedes usar el cmdlet Read-GcsObject
.
Cmdlets
Para leer el contenido de un objeto de Cloud Storage, usa el cmdlet Read-GcsObject
. Como configuración predeterminada, lee el contenido del objeto como una string y lo escribe en la canalización de PowerShell. Puedes especificar el parámetro -OutFile
para descargar el contenido del objeto en el disco local en su lugar:
Read-GcsObject $bucket "timestamp.txt" | Write-Host Read-GcsObject $bucket "logo.png" ` -OutFile "$Env:UserProfile\pictures\logo.png"
Provider
Para leer el contenido de un objeto de Cloud Storage, usa el cmdlet Get-Content
o uno de sus alias: cat
, gc
o type
.
cd gs:\my-gcs-bucket cat my-object-name
Borra datos
Para borrar datos a través del proveedor, usa el cmdlet estándar Remove-Item
.
Como alternativa, puedes usar el cmdlet Remove-GcsObject
.
Cmdlets
Para quitar cualquier dato de Cloud Storage, usa el cmdlet Remove-GcsObject
:
Get-GcsObject $bucket | Remove-GcsObject
Provider
Para quitar datos en Cloud Storage, usa el cmdlet Remove-Item
o uno de sus alias del
, rm
o erase
:
cd gs:\my-gcs-bucket rm my-object-name