我有超过10个drupal网站,我需要为每个网站应用补丁。目前我的补丁位于 /home/201803.patch ,我的drupal网站位于同一个文件夹中。目前我必须cd进每个目录,然后运行以下命令:
patch -p1< ../ 201803.patch
但我希望能够从/ home文件夹中执行每个操作。我在主文件夹中试过:
patch -p1子目录/< 201803.patch
但这不起作用。我如何从上面的一个目录进行修补?
答案 0 :(得分:1)
这是关于Bash / Shell的问题。请尝试以下方法。这将在{em>当前位置的每个子目录中cd
,然后运行给定的命令。
find . -maxdepth 1 -type d \( ! -name . \) -exec bash -c "cd '{}' && patch -p1 < ../201803.patch" \;
或逐一:
cd subdirectory && patch -p1 < ../201803.patch && cd ..