public_html
または、otherで終わるすべてのサブディレクトリを見つける方法が必要です。.com
トップレベルドメイン[いいね]をタップ.biz
または.co.il
一覧表示することもできます。ここのドキュメント。
pushd-popd
ループ内に入れ子になった - ドアの中の私のhereoducmnetは次のとおりです。if-fi
for
for dir in "$HOME"/public_html/*/; do
if pushd "$dir"; then
cat <<-"EOF" >> "$HOME"/public_html/ALL_DOT_COM|ALL_DOT_BIZ/.htaccess
Apache_directive_set_1
Apache_directive_set_2
popd
EOF
fi
done 2>myErrors.txt
これを達成するために、正規表現をここでドキュメントのリダイレクト/追加行(ここ)内で直接結合する方法はありますかALL_DOT_COM|ALL_DOT_BIZ
?
ベストアンサー1
私はあなたがなどのようなすべての.htaccess
ディレクトリに追加したいと思います。$HOME/public_html/foo.com/
$HOME/public_html/bar.biz/
ループfor
はすでにすべてのディレクトリを処理しています。問題は、目的のエンディングに一致するようにglobを調整することです。
for dir in "$HOME"/public_html/*.{com,biz,co.il}/; do
cat <<-"EOF" >> "$dir"/.htaccess
Apache directives...
...
EOF
done 2>myErrors.txt
ディレクトリへのフルパスがすでに含まれているため、cd
必要ないようです。dir
もちろん、上記はリストされた最上位ドメインとのみ一致します。 (「または他のTLD」と書いたので、これが望むものであるかどうかはわかりません。)ディレクトリ名にどのTLDがあるか気にしない場合は、または.../public_html/*/
を使用してください.../public_html/*.*/
。しかし、まだ他に何もないと仮定します。 (ただし、リストみんなTLDは少しぎこちないです。より多くの内容が出てくるかもしれません...)