The UNIX and Linux Forums  
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > シェルプログラミングとスクリプティング
Googleのunix.com



シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
タイマーをスタートアップスクリプト"を実行するプロセス" zawmn83 シェルプログラミングとスクリプティング 0 2008年8月21日 09:57午前
バックグラウンドプロセスをどのように" & "シェルスクリプトでリターンキーを含める racbern シェルプログラミングとスクリプティング 1 2008年3月11日 07:30午前
質問:シェルスクリプトの録音画面出力"スクリプト"コマンドを使用して? lalfonso.gomez シェルプログラミングとスクリプティング 4 2007年1月18日 09:31午後
いいえutpmxエントリ:低水準から実行する必要があります"ログイン" "シェル" peterpan UNIXのダミー質問と回答のため 0 2006年1月18日 04:15午前
私の"パンとバター"プロセスアライブPerlスクリプト....まま ネオ ヒントとチュートリアル 0 2005年1月8日 05:17午前

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2008年10月21日
Squeakygoose Squeakygoose is offline
登録ユーザー
  
 

参加日: 2008年1月
投稿: 14
シェルスクリプトの処理のまま" 1番出口"の後に

私は、 Oracleのエクスポートを実行するスクリプトがある:

コード:
<snip>
if [ ${exp_type} = FULL ]
then
        exp / full=y file=${exp_file} log=${exp_log} direct=y feedback=1000000 STATISTICS=NONE buffer=20000000
else
        exp / full=n owner=${schema_name} file=${exp_file} log=${exp_log} direct=y feedback=1000000 STATISTICS=NONE buffer=20000000
fi

if [ $? -ne 0 ]
then
        echo "Export command failed"
        exit 1
fi
echo "Export command succeeded"
exit 0
輸出する場合は、メッセージを取得し、私とは、スクリプトのメモリにはプロセスを終了する、成功する。しかし、失敗した場合には、スクリプトを停止する( ie. " " )が表示されませんが、輸出に成功する過程である:

コード:
> ps -ef|grep export
oracle   23241     1  0 10:04 pts/1    00:00:00 /bin/bash /u01/ct_scr/export.sh TAXTST FULL Y
ここで何が起こっているのは誰でも知っていますか?
  #2固定リンク)  
Old 2008年10月21日
wempy's Avatar
wempy wempy is offline
登録ユーザー
  
 

参加日: 2006年6月
場所:ハーペンデン、英国
投稿数: 208
挑戦する
コード:
ps -ef |grep PID
スクリプトは、その場合は、プロセスが完了するまで待って、これらのかもしれないを開くと、それを持っているすべての子供たちが表示されます。
ああ、 pidをpsの上にある元の結果は、アルファベットのFでした。
  #3固定リンク)  
Old 2008年10月21日
Squeakygoose Squeakygoose is offline
登録ユーザー
  
 

参加日: 2008年1月
投稿: 14
いいえ、何も:

コード:
> ps -ef|grep 23241
oracle   23241     1  0 10:04 pts/1    00:00:00 /bin/bash /u01/ct_scr/export.sh TAXTST FULL Y
oracle   24421  9040  0 10:22 pts/1    00:00:00 grep 23241
  #4固定リンク)  
Old 2008年10月21日
Squeakygoose Squeakygoose is offline
登録ユーザー
  
 

参加日: 2008年1月
投稿: 14
[ OK ]を、もう少し診断:

このスクリプトでは、 Yフラグをダンプするかどうかのパイプを介して圧縮されることを示している。でスクリプトの実行: " / u01/ct_scr/export.sh TAXTSTフルN "のは素晴らしいて終了します。

ここでは、コードを$ 3 \u003d Y氏:
コード:
if [ ${compress} = Y ]
then

        pipe_name=${exp_loc}/compress_${ORACLE_SID}_${schema_name:-FULL}_${today}_p

        # remove any existing pipe
        rm -f ${pipe_name}

        # Make a new pipe
        /bin/mknod ${pipe_name} p

        # initiate compression process on the new pipe to run in the background
        gzip -c < ${pipe_name} > ${exp_file}.gz &

        # Re-direct export output to the pipe
        exp_file=${pipe_name}

fi
私も1番出口の前に呼ばれてクリーンアップ機能を含まれています:

コード:
cleanup()
{
if [ ${compress:-N} = Y ]
then
        rm -f ${pipe_name}
fi
}
スクリプトの終了後にはおそらく、スクリプトとは、パイプの周りにハング知らないと背景をgzipコマンドを行っていますか?

もしあなたが私にはさっぱりして混乱してみましょう。私は、全体のスクリプトを作成しますが、ちょっと長いの...
  #5固定リンク)  
Old 2008年10月21日
Squeakygoose Squeakygoose is offline
登録ユーザー
  
 

参加日: 2008年1月
投稿: 14
確認された。暗黙のEOFを( )が正常終了するには、スクリプトの原因を削除する前に:いくつかのダミーテキスト管栄養

コード:
cleanup()
{
if [ ${compress:-N} = Y ]
then
        echo "fail" >> ${pipe_name}
        rm -f ${pipe_name}
fi
}
おそらく、この問題は、スクリプトの処理をgzipコマンドから消えてしまう前に、終了コードを返すには、スクリプトのプロセスを開いて来ています。前に何かをgzipプロセスフィードパイプキリングどっちつかずの状態では、スクリプト処理のままのようです。給餌はダミーテキストは、 [ OK ]を回避策ですが、 。 gzを解凍後のファイルを私には失敗した。

誰がどのようにEOFを送るだけで、パイプを知っている?私は、このきれいに。 gzを解凍ファイルを作成せずに終了する背景をgzipのプロセスを引き起こすことを願っている。
Closed Thread

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 05:16午後


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0