diff --git a/core/src/main/java/com/taobao/arthas/core/command/BuiltinCommandPack.java b/core/src/main/java/com/taobao/arthas/core/command/BuiltinCommandPack.java index 0b5509517..1114b9968 100644 --- a/core/src/main/java/com/taobao/arthas/core/command/BuiltinCommandPack.java +++ b/core/src/main/java/com/taobao/arthas/core/command/BuiltinCommandPack.java @@ -2,6 +2,7 @@ package com.taobao.arthas.core.command; import com.taobao.arthas.core.command.basic1000.CatCommand; import com.taobao.arthas.core.command.basic1000.ClsCommand; +import com.taobao.arthas.core.command.basic1000.EchoCommand; import com.taobao.arthas.core.command.basic1000.GrepCommand; import com.taobao.arthas.core.command.basic1000.HelpCommand; import com.taobao.arthas.core.command.basic1000.HistoryCommand; @@ -100,6 +101,7 @@ public class BuiltinCommandPack implements CommandResolver { commands.add(Command.create(LoggerCommand.class)); commands.add(Command.create(HistoryCommand.class)); commands.add(Command.create(CatCommand.class)); + commands.add(Command.create(EchoCommand.class)); commands.add(Command.create(PwdCommand.class)); commands.add(Command.create(MBeanCommand.class)); commands.add(Command.create(GrepCommand.class)); diff --git a/core/src/main/java/com/taobao/arthas/core/command/basic1000/EchoCommand.java b/core/src/main/java/com/taobao/arthas/core/command/basic1000/EchoCommand.java new file mode 100644 index 000000000..ca3f335d3 --- /dev/null +++ b/core/src/main/java/com/taobao/arthas/core/command/basic1000/EchoCommand.java @@ -0,0 +1,36 @@ +package com.taobao.arthas.core.command.basic1000; + +import com.taobao.arthas.core.shell.command.AnnotatedCommand; +import com.taobao.arthas.core.shell.command.CommandProcess; +import com.taobao.middleware.cli.annotations.Argument; +import com.taobao.middleware.cli.annotations.Description; +import com.taobao.middleware.cli.annotations.Name; +import com.taobao.middleware.cli.annotations.Summary; + +/** + * + * @author hengyunabc + * + */ +@Name("echo") +@Summary("write arguments to the standard output") +public class EchoCommand extends AnnotatedCommand { + private String message; + + @Argument(argName = "message", index = 0, required = false) + @Description("message") + public void setMessage(String message) { + this.message = message; + } + + @Override + public void process(CommandProcess process) { + if (message != null) { + process.write(message); + process.write("\n"); + } + + process.end(); + } + +}