Reputation:
I am looking for a way to pipe the data into gsutil cp:
echo '<html>foobar</html>' | gsutil cp --stdin gs://my-bucket/foo
the -I
option is for reading filepaths, not the data..gsutil help cp
says:
https://gist.github.com/ORESoftware/566d9c3d00e3858c1161ae9b741fc07e
So yeah I am looking for a way to send files to GS via stdin.
Upvotes: 10
Views: 5723
Reputation: 10576
From the docs:
You can use the -I option with stdin to specify a list of URLs to copy, one per line. This allows you to use gsutil in a pipeline to upload or download objects as generated by a program:
cat filelist | gsutil -m cp -I gs://my-bucket
or:
cat filelist | gsutil -m cp -I ./download_dir
where the output of cat filelist is a list of files, cloud URLs, and wildcards of files and cloud URLs.
Upvotes: -1
Reputation:
Looks like it works using -
like so:
echo '<html>foobar</html>' | gsutil cp - gs://my-bucket/foo
in my opinion, a --stdin
flag would be more explicit and preferred.
Upvotes: 17