fix bug in test shell and bug in front -a mode
This commit is contained in:
@@ -15563,8 +15563,27 @@ void myQtMsgHandler(QtMsgType type, const char *msg)
|
|||||||
|
|
||||||
// ------------------ <20>Զ<EFBFBD><D4B6><EFBFBD> printf <20><><EFBFBD><EFBFBD> ------------------
|
// ------------------ <20>Զ<EFBFBD><D4B6><EFBFBD> printf <20><><EFBFBD><EFBFBD> ------------------
|
||||||
// <20><><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> normal <20><><EFBFBD><EFBFBD> => <20><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>normalList(<28><><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD>)
|
// <20><><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> normal <20><><EFBFBD><EFBFBD> => <20><><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>normalList(<28><><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD>)
|
||||||
|
// <20><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>ȫ<EFBFBD>־<EFBFBD>̬<EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ printfmtx
|
||||||
|
static pthread_mutex_t printfmtx = PTHREAD_MUTEX_INITIALIZER;
|
||||||
|
|
||||||
|
// RAII<49><49><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>
|
||||||
|
class LockGuard {
|
||||||
|
public:
|
||||||
|
explicit LockGuard(pthread_mutex_t& mutex) : mtx(mutex) {
|
||||||
|
pthread_mutex_lock(&mtx);
|
||||||
|
}
|
||||||
|
~LockGuard() {
|
||||||
|
pthread_mutex_unlock(&mtx);
|
||||||
|
}
|
||||||
|
private:
|
||||||
|
pthread_mutex_t& mtx;
|
||||||
|
};
|
||||||
|
|
||||||
int customPrintf(const char* format, ...)
|
int customPrintf(const char* format, ...)
|
||||||
{
|
{
|
||||||
|
// <20>ڽ<EFBFBD><DABD>뺯<EFBFBD><EBBAAF>ʱ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>ʱ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>
|
||||||
|
LockGuard lock(printfmtx);
|
||||||
|
|
||||||
va_list args;
|
va_list args;
|
||||||
va_start(args, format);
|
va_start(args, format);
|
||||||
|
|
||||||
@@ -15577,7 +15596,7 @@ int customPrintf(const char* format, ...)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>std::cout<EFBFBD><EFBFBD><EFBFBD>Ӷ<EFBFBD>TeeStreamBuf<EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><EFBFBD><EFBFBD>
|
// <20><><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> std::cout
|
||||||
std::cout << buffer << std::endl;
|
std::cout << buffer << std::endl;
|
||||||
|
|
||||||
return written;
|
return written;
|
||||||
|
|||||||
@@ -1114,7 +1114,7 @@ void execute_bash_debug(string fun,string ip,string type,int proindex)
|
|||||||
|
|
||||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
char command[256];
|
char command[256];
|
||||||
snprintf(command, sizeof(command), "%s %s %s %s &", script, param1, param2, param3,param4);
|
snprintf(command, sizeof(command), "%s %s %s %s %s &", script, param1, param2, param3,param4);
|
||||||
|
|
||||||
std::cout << "command:" << command <<std::endl;
|
std::cout << "command:" << command <<std::endl;
|
||||||
|
|
||||||
@@ -1243,6 +1243,8 @@ void parse_set(const std::string& json_str) {
|
|||||||
proindex = index_item->valueint;
|
proindex = index_item->valueint;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
std::cout << "proindex is :" << proindex <<std::endl;
|
||||||
|
|
||||||
//У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
//У<><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||||
if((fun == "start" || fun == "delete") &&
|
if((fun == "start" || fun == "delete") &&
|
||||||
isValidIP(ip) &&
|
isValidIP(ip) &&
|
||||||
|
|||||||
@@ -355,11 +355,15 @@ private slots:
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>̶<EFBFBD>Ϊ "> "<22><><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ2
|
||||||
|
const int promptLength = 2;
|
||||||
|
|
||||||
// 4) <20>˸<EFBFBD><CBB8><EFBFBD>
|
// 4) <20>˸<EFBFBD><CBB8><EFBFBD>
|
||||||
if (c == '\x7f' || c == '\b') {
|
if (c == '\x7f' || c == '\b') {
|
||||||
if (!currentCommand.isEmpty()) {
|
// <20><><EFBFBD><EFBFBD> currentCommand <20>ij<EFBFBD><C4B3>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>ַ<EFBFBD>
|
||||||
|
if (currentCommand.length() > promptLength) {
|
||||||
currentCommand.chop(1);
|
currentCommand.chop(1);
|
||||||
// <20><><EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD>
|
// <20><><EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "\b \b" <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ַ<EFBFBD>
|
||||||
clientSocket->write("\b \b");
|
clientSocket->write("\b \b");
|
||||||
clientSocket->flush();
|
clientSocket->flush();
|
||||||
}
|
}
|
||||||
@@ -396,8 +400,7 @@ private:
|
|||||||
*/
|
*/
|
||||||
void printPrompt(QTcpSocket *clientSocket)
|
void printPrompt(QTcpSocket *clientSocket)
|
||||||
{
|
{
|
||||||
//clientSocket->write("\r\n> ");
|
clientSocket->write("\n\r\x1B[K> ");
|
||||||
clientSocket->write("\r\x1B[K> ");
|
|
||||||
clientSocket->flush();
|
clientSocket->flush();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -420,7 +423,7 @@ private:
|
|||||||
helpText += "log - Execute rocketmq_test_log\r\n";
|
helpText += "log - Execute rocketmq_test_log\r\n";
|
||||||
helpText += "ledger <id> - Execute ledger with optional terminal_id\r\n";
|
helpText += "ledger <id> - Execute ledger with optional terminal_id\r\n";
|
||||||
helpText += "viewlog <level> - View logs (ERROR, WARN, NORMAL, DEBUG)\r\n";
|
helpText += "viewlog <level> - View logs (ERROR, WARN, NORMAL, DEBUG)\r\n";
|
||||||
helpText += "value <valuename> - Execute value print with valuename\r\n";
|
helpText += "value <valuename> - Execute value print with valuename : frontindex remtable iedcount frontfun log init\r\n";
|
||||||
helpText += "exit - Exit the shell\r\n";
|
helpText += "exit - Exit the shell\r\n";
|
||||||
helpText += "help - Show this help message\r\n";
|
helpText += "help - Show this help message\r\n";
|
||||||
clientSocket->write("\r\x1B[K");
|
clientSocket->write("\r\x1B[K");
|
||||||
@@ -488,10 +491,10 @@ private:
|
|||||||
else if (cmd.startsWith("value")) {
|
else if (cmd.startsWith("value")) {
|
||||||
QStringList parts = cmd.split(" ");
|
QStringList parts = cmd.split(" ");
|
||||||
if (parts.size() > 1) {
|
if (parts.size() > 1) {
|
||||||
QString variableName = parts[1];
|
QString variableName = parts[1];
|
||||||
value_print(variableName.toStdString().c_str(), clientSocket);
|
|
||||||
clientSocket->write("\r\x1B[K");
|
clientSocket->write("\r\x1B[K");
|
||||||
clientSocket->write("Executed value with variable name: " + variableName.toUtf8() + "\r\n");
|
clientSocket->write("Executed value with variable name: " + variableName.toUtf8() + "\r\n");
|
||||||
|
value_print(variableName.toStdString().c_str(), clientSocket);
|
||||||
} else {
|
} else {
|
||||||
clientSocket->write("\r\x1B[K");
|
clientSocket->write("\r\x1B[K");
|
||||||
clientSocket->write("Please provide a variable name\r\n");
|
clientSocket->write("Please provide a variable name\r\n");
|
||||||
|
|||||||
Reference in New Issue
Block a user