How do you pipe the result of s3cmd get to a var?

2019-06-08 23:37发布

问题:

I need to get an image from S3, process it on an ec2, and save it to a different folder on S3. I would like to not save the file to ec2 during the process.

Is it possible to pipe the result of "s3cmd get s3://bucket/image" to a var? It does not seem to print to standard output?

回答1:

It would be better if you could show which output produce s3cmd in your case. But if you really want to save the output of the command to a variable you do it this way:

$ a=$(s3cmd get s3://bucket/image)

When you want to save stderr also, you make:

$ a=$(s3cmd get s3://bucket/image 2>&1)

And when only stderr:

$ a=$(s3cmd get s3://bucket/image 2>&1 > /dev/null)