public static @NotNull List<String> convertShellPathToCommand(@NotNull String shellPath) {
    List<String> shellCommand;
    if (isAbsoluteFilePathAndExists(shellPath)) {
      shellCommand = List.of(shellPath);
    }
    else {
      shellCommand = ParametersListUtil.parse(shellPath, false, !SystemInfo.isWindows);
    }
    String shellExe = ContainerUtil.getFirstItem(shellCommand);
    if (shellExe == null) return shellCommand;
    String shellName = PathUtil.getFileName(shellExe);
    if (!containsLoginOrInteractiveOption(shellCommand)) {
      shellCommand = new ArrayList<>(shellCommand);
      if (isLoginOptionAvailable(shellName) && SystemInfo.isMac) {
        shellCommand.add(LOGIN_CLI_OPTION);
      }
      if (isInteractiveOptionAvailable(shellName)) {
        shellCommand.add(INTERACTIVE_CLI_OPTION);
      }
    }
    return List.copyOf(shellCommand);
  }
public static @NotNull List<String> convertShellPathToCommand(@NotNull String shellPath)