def METHOD_NAME(dut,shell='sonic', skip_error_check=True, **kwargs):
    """
    To perform config save.
    Author : Prudvi Mangadu (prudvi.mangadu@broadcom.com)
    :param dut: single or list of duts
    :return:
    """
    cli_type = kwargs.get('cli_type', st.get_ui_type(dut,**kwargs))
    cli_type = 'klish' if cli_type in ['rest-put','rest-patch'] else cli_type
    dut_li = list(dut) if isinstance(dut, list) else [dut]
    st.log("Performing config save", dut=dut)
    if shell == 'sonic':
        command = 'config save -y'
        [retvals, exceps] = utils.exec_foreach(True, dut_li, st.config, command)
    if shell == "vtysh" or cli_type == 'click':
        command = 'do copy running-config startup-config'
        [retvals, exceps] = utils.exec_foreach(True, dut_li, st.config, command, type="vtysh", skip_error_check=skip_error_check)
    if cli_type == 'klish':
        #Need to execute write mem in case of klish also. Once all klish conversion is complete, only one command will be executed.
        command = "do write memory"
        [retvals, exceps] = utils.exec_foreach(True, dut_li, st.config, command, type=cli_type, skip_error_check=skip_error_check)
    st.debug([retvals, exceps])
    return True