sudo -u
test -r ; echo $? Часть
echo $?
выводит статус выхода из теста.Просто помните, что вывод будет
0
, если операция прошла успешно! Или ненулевое, например1
, если нет.Как комментарий @ Thomas к ответу @ user72025, используйте
man test
, чтобы получить больше рабочих тестов, напримерtest -x
для проверки выполнимости,test -w
для возможности записи и т. д.
Я понял, что программу нужно запускать как sudo, чтобы она могла получить доступ к порту ... Надеюсь, это поможет кому-то в будущем.
EDITED: программе c, которая у меня есть, требуется разрешение sudo для подключения сокета к UDP PORT 53000 и для отправки пакетов через этот порт.
socat
здесь для преобразования TCP в UDP
но в вашем объяснении вы не говорите о ssh
вы должны запустить ssh с -L
для пересылки client TCP 8000
наserver01 tcp 8000
вы должны запустить что-то вроде ssh -L 8000:localhost:8000 server01
от вашего клиента