public static void setExecutable(Path file) {
		final Set<PosixFilePermission> permissions;
		try {
			permissions = Files.getPosixFilePermissions(file);
			permissions.add(PosixFilePermission.OWNER_EXECUTE);
			permissions.add(PosixFilePermission.GROUP_EXECUTE);
			Files.setPosixFilePermissions(file, permissions);
		} catch (UnsupportedOperationException | IOException e) {
			throw new ExitException(BaseCommand.EXIT_GENERIC_ERROR, "Couldn't mark script as executable: " + file, e);
		}
	}
Searches the locations defined by `paths` for the given executable

@param cmd   The name of the executable to look for
@param paths A string containing the paths to search
@return A Path to the executable, if found, null otherwise
src/main/java/dev/jbang/util/Util.java