с java8 вы можете использовать форматтер:
import java.time.format.DateTimeFormatter
import java.time.LocalDate
println("withQuarter: " + LocalDate.of("2016".toInt,"07".toInt,1).format(DateTimeFormatter.ofPattern("yyyyQMM")))
с кварталом: 2016 3 07
Я думаю, что это работает:
if [-n "$STY"]; then
screen -X title "foo"
screen -X monitor on
fi
Из экранной страницы руководства:
-X Отправить указанную команду в текущий сеанс экрана. Ты можешь используйте параметр -d или -r, чтобы указать экрану искать только прикрепленные или отдельные сеансы экрана. Обратите внимание, что эта команда не работает если сеанс защищен паролем.
Обычно запускают
screen -X title mynewtitle
screen -X monitor on
. Если терминал не работает на экране, он автоматически выдает ошибку:
notinscreen:~$ screen -X title mynewtitle
notinscreen:~$
Вы также можете отправить команду в конкретный сеанс, даже если он отключен. Для данного сеанса экрана с именем "main":
$ screen -S main
[detach from screen session]
$ screen -ls
There is a screen on:
2073.main (Detached)
1 Socket in /tmp/uscreens/S-dbr.
.. вы можете отправить заголовок последнего активного окна на blah
:
$ screen -x main -X title blah
.. или в конкретное окно (с именем oldwindow
в этом примере):
$ screen -x main -p oldwindow -X title blah
Вместо использования -x main
вы можете использовать идентификатор процесса (из screen -ls
), а также вместо использования имени окна ( -p oldwindow
) вы можете использовать номер окна:
$ screen -x 2073 -p 0 -X title h
Если существует только один сеанс, вам не нужно указывать PID или имя сеанса.
Экран объявляет переменную среды $ STY
, вы можете попробовать ее использовать.
Экран работает прозрачно, поэтому определить сеанс экрана сложно. Если вы попытаетесь посылать нажатия клавиш, это сработает и приведет к заполнению вашего терминала крошечным мусором, если вы не находитесь в сеансе.
Хотите отображать информацию или взаимодействовать с самим сеансом экрана? Вы можете отправлять сообщения с помощью этого: ( http://www.slac.stanford.edu/comp/unix/package/epics/extensions/iocConsole/screen.1.html#lbAI )
СТРОКА СООБЩЕНИЯ Экран отображает информационные сообщения и другие диагностика в строке сообщения. Пока эта линия распространяется, чтобы появиться в внизу экрана, это может быть определено, чтобы появиться в верхней части экран во время компиляции. Если ваш терминал имеет строку состояния, определенную в его termcap, экран будет использовать это для отображение своих сообщений, в противном случае строка текущего экрана будет временно перезаписывается и выводится будет на мгновение прервано. В строка сообщения автоматически удаляется после задержки в несколько секунд, но может также должны быть удалены раньше (на терминалах без строки состояния), начиная с тип.
Можно использовать линию сообщений. приложением, запущенным в текущее окно с помощью ANSI Последовательность управления сообщением конфиденциальности. Для например, из оболочки попробуйте что-то вроде:
echo '
^ Hello world from window' $ WINDOW ' \\' где "" - это побег, "^" - это буквальная стрелка вверх, а '\' превращается в одиночная обратная косая черта.