Пример #1
0
int main(){
	string nom = getenv("nom");
	string akk = getenv("_Akk");

	TiObj buf;
	if ( nom == "." ){
		buf.loadFile(stdin);
	} else {
		buf.loadFile(nom);
		if ( buf.is("ERROR") ){
			cerr << buf;
			return 1;
		}
	}
	
	
	cout << buf.atStr(akk) << endl;
	return 0;
}
Пример #2
0
int main(int argc, char **argv){

	if ( argc < 2 ){
		cerr << "Syntax: " << argv[0] << " [Command Parameters ...]\n";
		return 1;
	}

	TiObj obj;
	obj.loadFile(stdin);
	Parser parser;
	string cmd;

	
	for (int i=0; i<obj.box.size(); i++){
		cmd = "";
		bool ok;
		TiObj& item = obj.box[i];
		char number[128];
		sprintf(number,"%d",i+1);
		item["__id"] = number;
		for ( int c=1; c<argc; c++ ){
			ok = parser.parse(cmd,item,argv[c]);
			if ( ok == false )
				break;
			cmd += " ";
		}
		if ( ok ){
			int e = system(cmd.c_str());
			if ( e == 0 )
				fprintf(stderr, "Process:Ok{\n\tcmd='%s';\n\tstatus=%d\n}\n", cmd.c_str(), e);
			else
				fprintf(stderr, "Process:Error{\n\tcmd='%s';\n\tstatus=%d\n}\n", cmd.c_str(), e);
		} else {
			fprintf(stderr, "ERROR{msg='%s'}\n", parser.error.c_str());
		}
	}


	return 0;
}