История изменений
Исправление No, (текущая версия) :
Вариант bash при помощи программы socat:
script1
#! /bin/bash
if [[ "$1" == 'server' ]]; then
socat UNIX-LISTEN:/tmp/script1.socket,fork exec:$0
exit
fi
function one() {
printf "1\n"
}
function two() {
printf "2\n"
}
read cmd
case "$cmd" in
'one' ) one;;
'two' ) two;;
* ) echo "unknown command '$cmd'";;
esac
script2
#! /bin/bash
reply=$(echo "$1" | socat UNIX-CONNECT:/tmp/script1.socket -)
echo "$reply"
в одном терминале запустить
./script1 server
в другом
./script2 one
./script2 two
./script2 three
Исходная версия No, :
Вариант bash при помощи программы socat:
script1
#! /bin/bash
if [[ "$1" == 'server' ]]; then
socat UNIX-LISTEN:/tmp/script1.socket,fork exec:$0
exit
fi
function one() {
printf "1\n"
}
function two() {
printf "2\n"
}
read cmd
case "$cmd" in
'one' ) one;;
'two' ) two;;
* ) echo "unknown command '$cmd'";;
esac
script2
#! /bin/bash
reply=$(echo "$1" | socat UNIX-CONNECT:/tmp/script1.socket -)
echo "$reply"
в одном терминале запустить
./script1
в другом
./script2 one
./script2 two
./script2 three