1

生成後に.htmlファイルをスイープするビルドスクリプトを作成していますが、これを機能させる方法がわからないようです。スニペットは次のとおりです。

for PAGE in ${PAGES[@]}
do
    echo "\t\t\t- $DIR_PRE$PAGE.html"
    echo "\t\t\t- cleaning links in $DIR_PRE$PAGE.html"
    php helper.php output lang=$GET+environment=prod+page=$PAGE > $SITE/$DIR_PRE$PAGE.html
    find * -name \*.html -print0 | xargs -0 sed --in-place -e 's~.php~.html~g'
done

最後のfindコマンドは、.htmlファイル内の.php拡張子のリンクを検索し、それを.htmlに置き換えることになっていますが、次のエラーが発生します。

sed:不正なオプション----使用法:sedスクリプト[-Ealn][-i拡張子][ファイル...]sed[-Ealn][-i拡張子][-eスクリプト]...[-fscript_file]。 ..[ファイル...]-wiiu.html

4

1 に答える 1

2

現在のディレクトリ内のすべての.htmlファイルの名前を.phpに再帰的に変更する場合:

find . -name "*.html" -exec rename .html .php {} \;

編集:質問を誤解しました。sedを使用して、ファイル内の文字列を置き換えることができます。

sed -i 's/.html/.php/g' *.html

于 2012-10-25T17:35:44.420 に答える