systemd - параметры по умолчанию .service

Для фактического переименования удалите слово echo.

ls -l file_* | 
awk '
BEGIN {
    OFS=",";
    print "Original filename", "Original timestamp", "Renamed filename" > "output.rpt";
}
{
    renamed_filename = "file_" toupper($6) $8; 
    original_timestamp = sprintf("%d-%s-%02d", $8, $6, $7);
    exit_status = system("echo mv -v -- " $9 " " renamed_filename);
    if(!exit_status)
        print $9, original_timestamp, renamed_filename > "output.rpt";
}'

Исходные файлы

-rw-rw-r-- 1 user user   0 Jul  1  1938 file_1
-rw-rw-r-- 1 user user   0 Sep  1  1947 file_10
-rw-rw-r-- 1 user user   0 May  1  2037 file_100

Сгенерированные команды переименования

mv -v -- file_1 file_JUL1938
mv -v -- file_10 file_SEP1947
mv -v -- file_100 file_MAY2037

выход.rpt

### Comma-separated values.
$ cat output.rpt
Original filename,Original timestamp,Renamed filename
file_1,1938-Jul-01,file_JUL1938
file_10,1947-Sep-01,file_SEP1947
file_100,2037-May-01,file_MAY2037

### Pretty printed by the `column` command.
$ cat output.rpt | column -t -s,
Original filename  Original timestamp  Renamed filename
file_1             1938-Jul-01         file_JUL1938
file_10            1947-Sep-01         file_SEP1947
file_100           2037-May-01         file_MAY2037
0
23.12.2019, 13:22
1 ответ

Я сам догадался.

systemdпо-видимому, поддерживает подстановочные знаки. Поэтому, как только вы включили некоторые экземпляры, вы можете легко остановить их все следующим образом:

systemctl stop 'glassfish@*'

Судя по всему, Ubuntu требует, чтобы вы добавили --all, поэтому общая команда будет

systemctl stop 'glassfish@*' --all
1
28.01.2020, 02:38

Теги

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