2017-02-20 1 views
0

開始したプロセスから時間を秒単位で取得しようとしています。しかし、私はちょうど1日を得ることができますが、完全な日時は取得できません。シェルスクリプトで完全なdataTimeをキャプチャするには?

ps --user <user Name> -o uid,pid,lstart,cmd:50 --no-heading | 
    tail -n +2 | 

    while read PROC_UID PROC_PID PROC_LSTART PROC_CMD; do 

    echo $PROC_LSTART 

    done 





While the lstart should give me something like : 

木1月26日9時○○分21秒2017

答えて

1

」:以下は私が作ったものですread "コマンドはスペース文字をフィールド区切り文字として読み込み、lstart出力をsiではなく5つの別々のフィールドとして読み込みますニグルフィールド。これを試してください:

ps --user <user Name> -o uid,pid,lstart,cmd:50 --no-heading | tail -n +2 | 
while read PROC_UID PROC_PID PROC_L1 PROC_L2 PROC_L3 PROC_L4 PROC_L5 PROC_CMD; do 
    echo $PROC_L1 $PROC_L2 $PROC_L3 $PROC_L4 $PROC_L5 
done 
+0

これは役に立ちます。区切り文字を変更する方法はありますか? –

+0

うれしい私は助けることができました。あなたの最新の質問に答えるために、はい、AIX形式のディスクリプタを使用しますが、残念ながらLSTARTフィールドはサポートしていません(少なくともCentOS 6ではこれが使用しています)。このスレッドを見る:http://stackoverflow.com/questions/3114741/generating-a-csv-list-from-linux-ps – Leslie

+0

素晴らしい...ありがとう –

関連する問題