Ваш скрипт, модифицированный:
#!/bin/sh
TEMPFILE=$(mktemp /tmp/atom.XXXX)
cat >"$TEMPFILE"
ide --file="$TEMPFILE"
Вы бы использовали это как
node main.js |./myscript.sh
Это передает вывод команды node
на стандартный ввод вашего скрипта. Затем сценарий просто перенаправляет свой стандартный ввод во временный файл.
Как вариант,
#!/bin/sh
TEMPFILE=$(mktemp /tmp/atom.XXXX)
printf '%s\n' "$1" >"$TEMPFILE"
ide --file="$TEMPFILE"
и используйте скрипт как
./myscript "$( node main.js )"
(обратите внимание на двойные кавычки и использованиеprintf
)
Я знаю, что переключился на /bin/sh
в приведенных выше примерах, но вы, похоже, не используете какую-либо особенно продвинутую функцию zsh
, поэтому я подумал, что это будет нормально.
Связанные: