首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux分叉进程(inotifywait)

Linux分叉进程(inotifywait)
EN

Unix & Linux用户
提问于 2019-03-13 14:37:02
回答 1查看 226关注 0票数 0

我有一个正在运行的bash脚本,正在分叉。看起来是这样的:

代码语言:javascript
复制
#!/bin/bash
/usr/bin/killall inotifywait

/usr/bin/inotifywait -mrq -e CREATE --format %w%f /home/sftp/folder1/ | while IFS= read -r FILE; do /bin/chmod 770 "$FILE"; done >/dev/null 2>&1 &
/usr/bin/inotifywait -mrq -e CREATE --format %w%f /home/sftp/folder2/ | while IFS= read -r FILE; do /bin/chmod 770 "$FILE"; done >/dev/null 2>&1 &
/usr/bin/inotifywait -mrq -e CREATE --format %w%f /home/sftp/folder3/ | while IFS= read -r FILE; do /bin/chmod 770 "$FILE"; done >/dev/null 2>&1 &
/usr/bin/inotifywait -mrq -e CREATE --format %w%f /home/sftp/folder4/ | while IFS= read -r FILE; do /bin/chmod 770 "$FILE"; done >/dev/null 2>&1 &

如果我运行这个脚本,它会创建8个进程:

  • 格式%w%f /home/sftp/folder1 1/.
  • /bin/bash ./scriptname.sh
  • 格式%w%f /home/sftp/folder2 2/.
  • /bin/bash ./scriptname.sh
  • 格式%w%f /home/sftp/folder3 3/.
  • /bin/bash ./scriptname.sh
  • 格式%w%f /home/sftp/folder4 4/.
  • /bin/bash ./scriptname.sh

为什么它不像这样分叉?

  • /bin/bash ./scriptname.sh
    • 格式%w%f /home/sftp/folder1 1/.
    • 格式%w%f /home/sftp/folder2 2/.
    • 格式%w%f /home/sftp/folder3 3/.
    • 格式%w%f /home/sftp/folder4 4/.

谢谢你的回答,星客

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-03-23 02:44:02

您正在将inotifywait的输出输出转换为while循环。而这个上下文中的循环将在子these中运行,这就是这些额外的bash进程。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/507938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档