我有一个正在运行的bash脚本,正在分叉。看起来是这样的:
#!/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个进程:
为什么它不像这样分叉?
谢谢你的回答,星客
发布于 2019-03-23 02:44:02
您正在将inotifywait的输出输出转换为while循环。而这个上下文中的循环将在子these中运行,这就是这些额外的bash进程。
https://unix.stackexchange.com/questions/507938
复制相似问题