qxidcプロジェクト/crtsurfdataプログラム殺青まとめ
13093 ワード
問題と解決策にぶつかる
1.ファイルクラスオープン操作関数が存在しない親ディレクトリを自動的に作成しない問題について
2.xshell接続が成功したがコマンドを入力できない方法
3.Linuxシステムで中断画面を徹底的にクリアする方法
4.Linuxコマンドラインで操作を実行し、コマンドラインを戻さない解決方法
5.実行プログラムにおいて、すべての信号を無視した場合、プログラムを終了できない問題
6.常駐メモリとタスクスケジューリングの設計について
7.タスクスケジューリングcrontab
7.「あなたがいる」/,/,/,に新しいメールがある」という問題を解決する
mail-問題解決方法
プログラム実装の効果
1.crontabタスクスケジューリングにより/home/houlc/qxidc/bin/crtsurfdata/home/houlc/qxidc/ini/inicodeを毎分1回呼び出す.ini/home/houlc/qxidc/data/ftp/surfdata/home/houlc/qxidc/log/crtsurfdata.log 2.プログラムは、元のデータが格納されているフォルダから自動的にデータを抽出し、ターゲットタイプのデータ構造を生成し、対応するコンテナに格納し、最後に生成したデータファイルを書き、指定したデータファイルディレクトリに格納します.3、プログラムはプログラムの運行状況をログ(時間とイベントが表示されている)に書き込んで、ログはできるだけ詳しく4、プログラムは最初はすべての信号を無視して、また単独でCtrl+cとkillの退出の中断を設置して、プログラムの発売が必要な時、プログラムが優雅に退出することができることを確保する
収穫、反省と次の計画
収穫するは、小さなデータ抽出とデータファイル生成のプログラムの概略開発プロセス を通じている.は、独自の関数ライブラリ をさらに豊富に熟知しています.は1つの具体的な機能を実現してとても楽しい を実現しました
反省4.山を越えるように勉強して、この山を通って、やっとあの山があることを知って、基礎を学んで、私は自分が更に更に実際に開発することができると思って、結局今、1つのプロジェクトの中の1つの小さいプログラムをして、やっと歩く道がまだ長いことを発見しました.私の以前学んだ多くの基础知识の理解はすべてまだとても浅薄で、実际に开発して経験がなくて、もし少し复雑な开発のシーンに対応するならば私は绝対に手の施しようがありませんまた、目の前で勉強しなければならないqxidcプロジェクトについては、私も少し歩いただけで、複雑なプログラムがたくさんあります.関連知識:ftpプロトコル、ftp採集モジュールの開発、その他の通信プロトコル、oracle環境構築、oracleのテーブル操作、oracleの事物、shellと環境変数、c言語操作データベース、テストデータ処理と入庫、工事の組織、oracleの虚表、日付とシーケンス、工事の最適化、oracle関数、インデックスとビュー、データ構造設計、データの処理、より強力なsql、計算の問題の検討、データ交換サブシステム、oracleデータベースの管理、システムの高可用性、mysqlデータベース、PostgreSQLデータベース、データベース互換技術、データマイニングサブシステム、httプロトコル、非構造化データの記憶、データ管理サブシステム、監視と警告サブシステム、ファイル転送システム、appソフトウェアサービス...
1.ファイルクラスオープン操作関数が存在しない親ディレクトリを自動的に作成しない問題について
1. crtsurfdata.cpp , CFile Open
** **,
, , false
, ftp , data/ftp/crtsurfdata
:
FIle.Open(/home/houlc/qxidc/data/ftp/surfdata/SURF_ZH_20200722230447_3461) !
,
2. ** **
1: , , ( MKDIR )
2: Cfile::Open , fopen FOPEN( MKDIR)
3. ** **:
1>> , ,
,
, ,
, ,Open ,
, false ?
2>> , MKDIR ,
CFile::Open false , MKDIR
----* ,,,*
, MKDIR
-----** CLogFIle::Open **。。。。
。。。
,
, ,
, ,
" ",
" File::Open " FOPEN
( , ) Open ,
, File::Open,
,
if false ,MKDIR ,
2.xshell接続が成功したがコマンドを入力できない方法
, Ctrl+s
Ctrl+q
3.Linuxシステムで中断画面を徹底的にクリアする方法
:reset
4.Linuxコマンドラインで操作を実行し、コマンドラインを戻さない解決方法
1>test.log
python GetDeviceData.py 1>websocket_success.log 2>websocket_error.log &
5.実行プログラムにおいて、すべての信号を無視した場合、プログラムを終了できない問題
//
void CloseIOAndSignal()
{
int ii=0;
for (ii=0;ii<100;ii++)
{
signal(ii,SIG_IGN); close(ii);
}
}
Ctrl+z , , , Ctrl+c
, ,
kill -9
6.常駐メモリとタスクスケジューリングの設計について
60s , ,
7.タスクスケジューリングcrontab
*** 、Crontab -e ***
:
*/1 * * * * /home/houlc/qxidc/bin/crtsurfdata
【 : , 】
【Min hour day month week command】
, :
1) (*): ,
2) (,):
3) (-): :2-6:2,3,4,5,6,
4) (/): ,
“0-23/2” 。
, ,
*/10, minute ,
*** 、crontab ***
1)service cron start //
2)service cron stop //
2.5)service cron restart //
3)service cron reload //
4)service cron status //
*** 、 ***
ps -ax | grep cron
```cpp
*** 、crontab ***
1》 -u
2》 -l
3》 -r
4》 -e
*** 、 ***
1- :crontab -e, ,wq
2- /etc/crontab , vi /etc/crontab,
*** 、 ***
1=1 crontab -l //
2=2 crontab -l -u -jp // jp
7.「あなたがいる」/,/,/,に新しいメールがある」という問題を解決する
1》 mail
2》 cat /dev/null > /var/spool/mail/houlc
3》
Echo "unset MAILCHECK" >> /etc/profile
mail-問題解決方法
プログラム実装の効果
1.crontabタスクスケジューリングにより/home/houlc/qxidc/bin/crtsurfdata/home/houlc/qxidc/ini/inicodeを毎分1回呼び出す.ini/home/houlc/qxidc/data/ftp/surfdata/home/houlc/qxidc/log/crtsurfdata.log 2.プログラムは、元のデータが格納されているフォルダから自動的にデータを抽出し、ターゲットタイプのデータ構造を生成し、対応するコンテナに格納し、最後に生成したデータファイルを書き、指定したデータファイルディレクトリに格納します.3、プログラムはプログラムの運行状況をログ(時間とイベントが表示されている)に書き込んで、ログはできるだけ詳しく4、プログラムは最初はすべての信号を無視して、また単独でCtrl+cとkillの退出の中断を設置して、プログラムの発売が必要な時、プログラムが優雅に退出することができることを確保する
収穫、反省と次の計画
収穫する
反省4.山を越えるように勉強して、この山を通って、やっとあの山があることを知って、基礎を学んで、私は自分が更に更に実際に開発することができると思って、結局今、1つのプロジェクトの中の1つの小さいプログラムをして、やっと歩く道がまだ長いことを発見しました.私の以前学んだ多くの基础知识の理解はすべてまだとても浅薄で、実际に开発して経験がなくて、もし少し复雑な开発のシーンに対応するならば私は绝対に手の施しようがありませんまた、目の前で勉強しなければならないqxidcプロジェクトについては、私も少し歩いただけで、複雑なプログラムがたくさんあります.関連知識:ftpプロトコル、ftp採集モジュールの開発、その他の通信プロトコル、oracle環境構築、oracleのテーブル操作、oracleの事物、shellと環境変数、c言語操作データベース、テストデータ処理と入庫、工事の組織、oracleの虚表、日付とシーケンス、工事の最適化、oracle関数、インデックスとビュー、データ構造設計、データの処理、より強力なsql、計算の問題の検討、データ交換サブシステム、oracleデータベースの管理、システムの高可用性、mysqlデータベース、PostgreSQLデータベース、データベース互換技術、データマイニングサブシステム、httプロトコル、非構造化データの記憶、データ管理サブシステム、監視と警告サブシステム、ファイル転送システム、appソフトウェアサービス...
, ,
, ,