Существует ли автоматический способ добавления групповых прав на чтение к "nohup.out" при запуске "nohup"?
Я запускаю свой Java-код из bash-скрипта, используя такую команду:
exec nohup "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" com.myClass "$@" &
Который создает выходной файл nohup.out
и этот файл имеет такие разрешения:
-rw------- 1 24308657 Mar 24 12:52 nohup.out
Я хочу, чтобы у группы тоже было разрешение на чтение, а не только у пользователя, который выполнил команду.
Как мне это сделать?
3 ответа
Решение
Вы можете добавить изменение разрешений в вашей команде, используя оператор "и" (&&
) как это:
exec nohup "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" com.myClass "$@" && chmod g+r nohup.out &
Создать nohup.out
файл перед запуском nohup
, При необходимости дайте ему правильные разрешения при его создании.
touch nohup.out && nohup seq 1
Который затем создаст файл с вашими разрешениями по умолчанию, прежде чем nohup
на самом деле запустить:
-rw-r--r-- 1 rici rici 6 Mar 25 14:57 nohup.out
nohup
затем добавить его вывод к этому nohup.out
файл.
Можете ли вы изменить разрешения обычным способом?
chmod g+r nohup.out