В сценариях Bash, что является значением “$!”?

Это могла бы быть лучшая идея сохранить это строго двоичным, как упомянуто здесь bbe кажется, инструмент для задания. Следующая команда пишет JPEGs для обнуления дополненных числовых файлов.

bbe -s -b '/\xff\xd8/:/\xff\xd9/' -e 'w %05B.jpg' > /dev/null

39
25.08.2016, 14:05
2 ответа

$! содержит идентификатор процесса последний раз выполняемого фонового конвейера. От man bash:

Специальные параметры

Оболочка рассматривает несколько параметров особенно. На эти параметры можно только сослаться; присвоение на них не позволяется.

...

! - Разворачивает до идентификатора процесса последний раз выполняемого фона (асинхронную) команду.

Например:

$ sleep 60 &
[1] 6238
$ echo "$!"
6238
57
27.01.2020, 19:35
  • 1
    справки я получаю чувство, что Вы и slm говорите о Примечании того же самого :) –  msw 31.07.2013, 13:56

Из страницы справочника Bash:

   !   Expands to the process ID of the most recently executed 
       background (asynchronous) command.

Так $! содержал бы идентификатор процесса (PID) последнего задания, которое было фоном.

Пример

$ sleep 100 &
[1] 18813

$ echo "$!"
18813

Ссылки

22
27.01.2020, 19:35
  • 1
    я получаю чувство, что Вы и Chris Down говорите о том же самом :) –  a CVn 31.07.2013, 12:25
  • 2
    Казалось бы, что существует эхо по этому Вопросу 8-). –  slm♦ 31.07.2013, 14:30
  • 3
    Те же количества голосов, также! –  a CVn 31.07.2013, 15:03
  • 4
    @MichaelKjörling - эй великие умы мыслят одинаково 8-). –  slm♦ 31.07.2013, 15:09

Теги

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