3

Solaris /bin/sh シェル スクリプトの既存のファイルと同じ所有権とパーマを持つ新しい空のファイルを作成する最良の方法は何ですか?

これは、圧縮およびダンプ ストレージ用にログ ファイルをローテーションするためのものです。

現時点で私は使用しています:

mv log log_ts && cp -p log_ts log && cp /dev/null log

それを行うより良い方法はありますか?

更新:残念ながら、これは保守的に構築されたライブ Sol10 サーバー上にあり、gnu fileutils は利用できません。

4

2 に答える 2

2

私はこれを GNU で行います。Solaris でも動作すると思います。

touch new_file && chmod --reference=old_file new_file
于 2012-11-19T14:16:09.543 に答える
1

次のようなことをする必要があります。

PERM=`ls -l $EXISTING | cut -d" " -f1 | cut -c2- `
PERMU=`echo $PERM |cut -c1-3 | sed s/-//g`
PERMG=`echo $PERM |cut -c4-6 | sed s/-//g`
PERMO=`echo $PERM |cut -c7-9 | sed s/-//g`
chmod u="$PERMU" $TARGET
chmod g="$PERMG" $TARGET
chmod o="$PERMO" $TARGET

当然、これはSolaris用です。

于 2012-11-20T18:38:29.647 に答える