MacOS – Using bash/terminal to get number of battery recharge cycles

bashbatterymacbook promacosterminal

I would like to get the number of recharge cycles using bash (terminal commands). I understand the following command will display all of the battery data, but I want the cycle count on its own

ioreg -l -w0 |grep Capacity

I use the following command to get the battery percentage, so I imagine it can be modified slightly to get the cycle count instead;

ioreg -l | awk '$3~/Capacity/{c[$3]=$5}END{OFMT="%.3f";max=c["\"MaxCapacity\""];print(max>0?100*c["\"CurrentCapacity\""]/max:"?")}'

I'm new to bash, so I'm not completely sure how that code works, or how I'd adapt it for my needs.

Any help would be appreciated. Thanks.

Best Answer

Something like

system_profiler SPPowerDataType | grep "Cycle Count" | awk '{print $3}'

should do the job.

system_profiler SPPowerDataType | grep "Condition" | awk '{print $2}'

will get you the battery condition, for example: Normal.

If you want more output, run:

system_profiler SPPowerDataType | grep -A3 -B7 "Condition"

to get something similar to this:

      Charge Information:
          Charge Remaining (mAh): 2405
          Fully Charged: No
          Charging: No
          Full Charge Capacity (mAh): 3816
      Health Information:
          Cycle Count: 187
          Condition: Normal
      Battery Installed: Yes
      Amperage (mA): -2635
      Voltage (mV): 11212