Thanks for this, that's a nice trick.  I have a feeling there ought to be a 
simpler way of doing it but haven't thought what that might be yet.
Jon

On Thursday, July 14, 2016 at 7:27:10 AM UTC+1, ishan jain wrote:
>
> Thanks Jon, this solved my issue. I didn't know about this convertto-Json 
> thing and it seems to be very useful. The only problem is the raw module 
> which would still require lot of string operations to find the desired 
> value.
>
> Using "Get-PsDrive C |select-object Free|ConvertTo-json", i get the value 
> in Ansible like this:
>
> TASK [debug] 
> *******************************************************************
> ok: [AC05] => {
>     "drive | to_json": {
>         "changed": false,
>         "rc": 0,
>         "stderr": "",
>         "stdout": "{\r\n    \"Free\":  38710173696\r\n}\r\n",
>         "stdout_lines": [
>             "{",
>             "    \"Free\":  38710173696",
>             "}"
>         ]
>     }
> }
>
>
> This is still not very useful. So i used *from_json* to parse the output.
>
>  - debug: var="(drive.stdout | from_json).Free"
>
> and thus got the output in proper format:
>
> TASK [debug] 
> *******************************************************************
> ok: [AC05] => {
>     "(drive.stdout | from_json).Free": "38709694464"
> }
>
>
> On Wednesday, 13 July 2016 18:01:11 UTC+5:30, J Hawkesworth wrote:
>>
>> Try something like this:
>>
>> Get-PsDrive C |select-object Free|ConvertTo-json
>>
>> You should then be able to use 'register' to capture the result and make 
>> use of it.
>>
>> By the way I found this which has a lot of good starting points for 
>> converting unix toolbox commands into powershell  
>> https://www.gitbook.com/book/devopscollective/a-unix-person-s-guide-to-powershell/details
>>
>> Hope this helps,
>>
>> Jon
>>
>>
>>
>> On Wednesday, July 13, 2016 at 12:06:44 PM UTC+1, ishan jain wrote:
>>>
>>> I am trying very hard to get a numerical value of free disk space on a 
>>> windows server 2012 R2 machine, but couldn't get it so far. All the 
>>> commands that are available for listing the disk space information - they 
>>> are not providing the output in proper format. Here are a few commands i 
>>> tried:
>>>
>>> *raw: Get-PSDrive C | Select-Object Free*
>>>
>>> *Output:*
>>>
>>> TASK [debug] 
>>> *******************************************************************
>>> ok: [AC05] => {
>>>     "freeSpace": {
>>>         "changed": false,
>>>         "rc": 0,
>>>         "stderr": "",
>>>         "stdout": "\r\n                                                 
>>>                           Free\r\n                                         
>>>                                   ----\r\n                                 
>>>                                    53051551744\r\n\r\n\r\n",
>>>         "stdout_lines": [
>>>             "",
>>>             "                                                           
>>>                 Free",
>>>             "                                                           
>>>                 ----",
>>>             "                                                           
>>>          53051551744",
>>>             "",
>>>             ""
>>>         ]
>>>     }
>>> }
>>>
>>>
>>> *raw: fsutil volume diskfree C: | find /i "avail free bytes"*
>>>
>>> *output:*
>>>
>>> TASK [debug] 
>>> *******************************************************************
>>> ok: [AC05] => {
>>>     "drive": {
>>>         "changed": false,
>>>         "rc": 0,
>>>         "stderr": "",
>>>         "stdout": "Total # of avail free bytes  : 53056536576\r\n",
>>>         "stdout_lines": [
>>>             "Total # of avail free bytes  : 53056536576"
>>>         ]
>>>     }
>>> }
>>>
>>> wmic logicaldisk get size
>>>
>>> output: (no way of getting info for single drive)
>>>
>>> Size
>>>
>>> 63899168768
>>>
>>> 53683941376
>>>
>>>
>>> ------------------
>>>
>>>
>>> As you can see, there really doesn't seems to be a way of knowing the 
>>> exact numerical value of free disk space in windows machine. Anybody doing 
>>> this without using any external utility ?
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/a1dde1d4-f290-4d43-8cae-c3b5e06b0e98%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to