Запустите скрипт bash с несколькими строками -из Emacs

Я хочу запустить следующий скрипт bash, который хранится в строке Elisp, а не в файле .sh, а затем сохранить вывод оболочки в переменной.

#!/bin/bash
IFS=: read -ra _dirs_in_path <<< "$PATH"

for _dir in "${_dirs_in_path[@]}"; do
    for _file in "${_dir}"/*; do
        [[ -x ${_file} && -f ${_file} ]] && printf '%s\n' "${_file##*/}"
    done
done

Я не мог запустить shell-commandна bash-скриптах, состоящих из нескольких строк. Emacs и длинные команды оболочки мне тоже не помогли, так как compileи comint-runтакже требуют команд, а не синтаксиса bash.

Как запустить сложный bash-скрипт из Elisp?

5
задан Community 23 May 2017 в 11:48
поделиться