![]() |
|
|
Googleのunix.com
|
|||||||
| シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| TFTPのトラブルシューティング | Bobby76 | UNIXのダミー質問と回答のため | 0 | 2008年2月29日 09:44午前 |
| ファイルからの読み込みと変数とファイルのパスを無視する# | konark | シェルプログラミングとスクリプティング | 4 | 2007年11月8日 03:55午前 |
| ファイルを読み込むと、パラメータファイルのファイル名を書く。 | thebeginer | UNIXの詳細&エキスパートのためのユーザー | 1 | 2007年10月5日 05:38午後 |
| ファイルからファイル名とファイルを実行するシェルスクリプトからの相対レディング | anushilrai | シェルプログラミングとスクリプティング | 4 | 2006年3月10日 05:25午前 |
| 具体的な内容をファイルから読み込み、別のファイルに付加 | dnicky | シェルプログラミングとスクリプティング | 5 | 2005年10月4日 06:45午前 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
トラブルシューティング:ファイルの読み取り衝突?
こんにちはすべて 私は完全に私は昨日としただけ私のことについてご意見を述べるだろう期待していた問題を理解しようとしている。私は問題を修正が、私はまだ知らない、私は以下のシナリオでの行動の一部を体験できると思うと考えています。ここの状況(旧簡易コード版)されました: コード:
for FILE in $INPUT_DIR ; do
grep -q $FILE $PROCESSED 2>&1
if [ $? != 0 ] ; then
echo $FILE >> $PROCESSED
else
continue
fi
SOURCE=`grep ^S $FILE | wc -l | awk '{print $1}'`
END_RCD=`grep ^E $FILE | wc -l | awk '{print $1}'`
if [ $SOURCE -ne $END_RCD ] ; then
echo "Error in $FILE: "$SOURCE" source keys detected, but "$END_RCD" end keys detected.
fi
done
のINPUT_DIRの内容はファイルがたくさん含まれ、そのうちの一人では、上記のエラー(ソース\u003d 1 、報告END_RCD \u003d 0 ) 。しかし私が見た限りでは、ファイルを[ OK ]を参照してください、というものだった。私はすぐに私のコマンドも再修正されたような出力としては、最後の[ OK ]を取得するには、全体のファイルリスト上のスクリプトを走ったので、この奇妙な光景を見て初めて見た。 調査のいくつかの時間後にやっと私はバックグラウンドで実行中のプロセスを呼び出していたnの束は、コードのビット。次のように呼び出してもらうがないにもかかわらず、この私は、もともとは一度だけだが同時に実行されているので、ファイル( n )をINPUT_DIRに陥る私のプロセスからファイルを更新する処理は、加工されると、このスクリプトを想定。 残念ながら私の理論は、真理は、スクリプトを何度も並行して同じ時間を別のセッション( )から、加工で、これは独自のファイルを加工したものではない(あなたがここにはどのようにすることができますを開始するという点だ) 。そのためには、上記のスクリプトのエラーは、プロセス上のファイルは、プロセスによって( n - 1の)作成のため( n )を実行して報告をまとめる。 ファイルを一度に一度、それだけでは、このファイルには、間違ったプロセスによってチェックされるが、結果は同じままで開かれるとすぐ、上記の状況はまだいればきっと大丈夫。さて、私は信じているのは、 2つのセッションで同じ時期に開かれ、エラー報告のファイルです。 Iと処理後のファイルを削除して今一度、すべてのプロセスはもう完成しているすべての問題を入手していない、このスクリプトを実行します。私はまだ理解していないことを理由END_RCD 0を与えただけです。異なる2つのセッションから変数のバッファが、私が表示されないようなエラーを生成する方法と、ファイル上の潜在的な衝突。もしここでは誰も信用している 説明は、私はそれについて知って満足していると思います。多くのおかげで、 ヤン |