c++调用脚本计算sha512

计算摘要命令 sha512sum
checkSha.sh

#!/bin/bash
if [ "$1" = "sha512" ]
then
    sha512sum $2| awk '{print $1}'
    exit 0
fi

if [ "$1" = "md5" ]
then
    md5sum $2 | awk '{print $1}'
    exit 0
fi
#include 
#include 
#include 

using namespace std;

int main(void)
{
    FILE *fp = popen("./checkSha.sh sha512 123","r");
    if(NULL == fp)
    {
        cout << "error" << endl;
    }
    char buf[150] = "";

    fread(buf,sizeof(buf),1,fp);
    string sha512Value(buf);
    size_t pos = sha512Value.find_last_not_of("\n");
    if(pos != string::npos)
    {
        sha512Value.erase(pos + 1,sha512Value.size() - pos);
    }
    cout << sha512Value << endl;
    pclose(fp);
    return 0;
}

你可能感兴趣的:(c++,shell)