То, как изменить местоположение журнала по умолчанию SMF, зарегистрировало процессы

Это - основанное на Perl rename найденный на Debian, Ubuntu и производных, судящих синтаксисом. Вы не можете использовать tr оператор, потому что это действует на целую строку. Но можно соответствовать расширению и нижнему регистру это с \L.

rename 's/\.[^.]*$/\L$&/' *.JPG *.MOV

Здесь является ненужным, но если бы regexp соответствовал больше, чем часть, которую Вы хотите к нижнему регистру, то Вы могли поместить часть, которая будет согласована в группе:

rename 's/\.([^.]*)$/.\L$1/' *.JPG *.MOV

Замена *.JPG *.MOV *.* действовать на все файлы независимо от расширения. В ударе ≥4.3 (и также в ударе 4.0–4.2, с протестом, что это также пересекает символьные ссылки на каталоги), можно легко действовать на файлы в подкаталогах и так далее рекурсивно:

rename 's/\.[^.]*$/\L$&/' **/*.*

Для zsh вентиляторов ( :r и :e модификаторы изолируют расширение от остальной части файла):

autoload zmv
zmv '*.(MOV|JPG)' '${f:r}.${(L)f:e}'      # these extensions, current directory
zmv '*.*' '${f:r}.${(L)f:e}'              # all extensions, current directory
zmv '**/*.*' '${f:r}.${(L)f:e}'           # all extensions, recursive directory traversal

3
01.03.2011, 12:16
1 ответ

Тот путь к файлу, кажется, компилируется в svc.startd:

myhostname# strings /lib/svc/bin/svc.startd |grep '/var/svc/log'
/var/svc/log/
/var/svc/log/
/var/svc/log/
/var/svc/log/

Я предполагаю, что Вы могли попытаться изменить местоположение каталога к где-то в другом месте и сделать /var/svc/log символьная ссылка на новое местоположение, но я не полагаю, что возможно сделать сервисы всем журналом в один файл - это просто не, как SMF был разработан для работы. И так как svc.startd запускается рано в процессе начальной загрузки, прежде чем / var будет даже смонтированное чтение-запись, связываясь /var/svc/log некоторому другому - возможно даже размонтированный - раздел может доставить неприятности.

2
27.01.2020, 21:29

Теги

Похожие вопросы