0

特定のシェル スクリプトの次の数行を理解するには、助けが必要です。

ここで$_filecount、変数はアーカイブするファイルの数を保持します

$TARCここで、このコマンドで検索しましたが、TARCコマンドの結果が得られなかったという意味を知りたいですTARU。これらのコマンドが何であるかを誰か説明してもらえますか

_archive=${ARCHIVE_PATH}/${_name}_$(hostname)_${_today}.tar


if [ $_filecount -ne 0 ]; then
      if ! [ -f ${_archive} ]; then
        touch ${ARCHIVE_PATH}/${_today}
        $TARC ${_archive} -C ${ARCHIVE_PATH} ${_today}
        rm -f ${ARCHIVE_PATH}/${_today}
      fi
      for i in ${_filelist}; do

        $TARU ${_archive} -C ${_path} $i
        [ $? -eq 0 ] && rm -f ${_path}/$i
      done
    fi

cygwin 行 $TARCを使用してこのコードを実行すると、${_archive} -c ${ARCHIVE_PATH} ${_today}次のエラーが返されます

tar: invalid option -- 'E'
Try `tar --help' or `tar --usage' for more information.

助けてくれてありがとう

4

1 に答える 1

2

$TARC$TARUは変数です (スクリプトのどこかに定義されていない場合は、環境変数でなければなりません)

それらが何に設定されているかを確認してくださいecho $TARC

TARC はアーカイブする tar コマンドで、TARU はアーカイブを解除する tar コマンドです。

TARC と TARU はどこかに設定する必要があります。そうしないと、別のエラーが発生します。表示されるエラーは tar 固有のものです。

于 2012-05-21T07:13:23.727 に答える