Questa pagina mostra come eseguire il backup dei dati da una macchina locale a Cloud Storage utilizzando Cloud Tools for PowerShell. A differenza della maggior parte delle risorse, Cloud Tools for PowerShell offre due modi per accedere alle risorse Cloud Storage, i cmdlet e un provider PowerShell.
Il provider ti consente di accedere a bucket e oggetti di Storage come un file system, utilizzando i comandi del file system che già conosci. Tuttavia, il fornitore presenta alcune limitazioni. Non tutti i nomi degli oggetti legali vengono convertiti in percorsi dei fornitori di servizi legali. Non puoi utilizzare il provider per gestire le ACL. Per questi casi avanzati, puoi utilizzare i cmdlet. Consulta la documentazione di riferimento dei cmdlet Cloud Tools for PowerShell per saperne di più sui cmdlet Cloud Storage.
Caricamento dei dati
I dati in Cloud Storage sono organizzati in bucket. Crea un nuovo bucket come segue:
Cmdlets
Utilizza il cmdlet New-GcsBucket
per creare un nuovo bucket:
$bucket = "my-gcs-bucket" New-GcsBucket $bucket
Provider
I bucket sono cartelle nella radice del gs:\
. La creazione di un nuovo elemento a quel livello comporterà la creazione di un nuovo bucket.
cd gs:\ $bucket = "my-gcs-bucket" mkdir $bucket
Caricare file in un bucket
Puoi caricare un singolo file o un'intera directory nel tuo bucket:
Cmdlets
Utilizza New-GcsObject
. Sono necessari un bucket di destinazione e un nome dell'oggetto come parametri. La provenienza dei contenuti del nuovo oggetto Storage dipende dall'insieme di parametri utilizzato.
Puoi caricare i contenuti di un file locale su Cloud Storage utilizzando il parametro -File
e specificando un percorso file. In alternativa, puoi trasmettere i contenuti dell'oggetto come stringa tramite la pipeline PowerShell o utilizzare il parametro -Value
.
Puoi caricare un'intera directory dal disco locale su Cloud Storage utilizzando il parametro -Folder
e specificando il percorso della cartella. Se non vuoi che la cartella venga caricata direttamente nella directory principale del bucket Cloud Storage, utilizza -ObjectNamePrefix
per specificare un prefisso che verrà applicato a ogni oggetto caricato.
# 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
Utilizza New-Item
. Richiede un percorso per l'elemento che viene creato. Può trattarsi di un percorso assoluto o relativo. I contenuti del nuovo oggetto archiviazione possono essere specificati come stringa per il parametro -Value
o specificando un percorso file per il parametro -File
.
New-Item gs:\my-gcs-bucket\new-object -File $file
Il seguente snippet carica un'intera directory dal disco locale su 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 }
Ricerca dei dati
Puoi cercare i dati con i cmdlet o con il provider tramite i cmdlet di ricerca dei file comuni.
Cmdlets
Puoi cercare gli oggetti di un bucket utilizzando Get-GcsObject
. Questa operazione può essere utile se combinata con il cmdlet Out-GridView
per visualizzare i dati:
Get-GcsObject $bucket | Select Name, Size | Out-GridView
Provider
Puoi utilizzare Get-ChildItem
o uno dei suoi alias: dir
, ls
o gci
.
Puoi utilizzare il parametro -Recurse
per cercare in tutte le directory logiche:
cd gs:\my-gcs-bucket ls -Recurse
Lettura dei dati
Per leggere i dati tramite il provider, utilizza il cmdlet Get-Content
standard.
In alternativa, utilizza il cmdlet Read-GcsObject
.
Cmdlets
Per leggere i contenuti di un oggetto Cloud Storage, utilizza il cmdlet
Read-GcsObject
. Per impostazione predefinita, legge i contenuti dell'oggetto come stringa e li scrive nella pipeline di PowerShell. In alternativa, puoi specificare il parametro -OutFile
per scaricare i contenuti dell'oggetto sul disco locale:
Read-GcsObject $bucket "timestamp.txt" | Write-Host Read-GcsObject $bucket "logo.png" ` -OutFile "$Env:UserProfile\pictures\logo.png"
Provider
Per leggere i contenuti di un oggetto Cloud Storage, utilizza il cmdlet Get-Content
o uno dei suoi alias: cat
, gc
o type
.
cd gs:\my-gcs-bucket cat my-object-name
Eliminazione di dati
Per eliminare i dati tramite il provider, utilizza il cmdlet Remove-Item
standard.
In alternativa, utilizza il cmdlet Remove-GcsObject
.
Cmdlets
Per rimuovere i dati in Cloud Storage, utilizza il cmdlet Remove-GcsObject
:
Get-GcsObject $bucket | Remove-GcsObject
Provider
Per rimuovere i dati in Cloud Storage, utilizza il cmdlet Remove-Item
o uno dei suoi alias del
, rm
, erase
:
cd gs:\my-gcs-bucket rm my-object-name