如何为 GroupMe bot 的消息命令创建 .bash_profile 别名
How do I create a .bash_profile alias for a GroupMe bot's message command
我有一个 GroupMe 机器人,可以将消息发送到分配给它的聊天室,格式如下:
curl -d '{"text" : "text", "bot_id" : "(REDACTED)"}' https://api.groupme.com/v3/bots/post
所以,我决定为它创建一个别名,而不是每次我想发送消息时都输入这个怪物。
这是我尝试在我的 .bash_profile 中使用的内容:
alias groupmessage=groupmessagefunction
groupmessagefunction() { curl -d '{"text" : , "bot_id" : "(REDACTED)"}' https://api.groupme.com/v3/bots/post; }
谁能告诉我正确的格式是什么才能让它工作?谢谢!
更新 1:
我现在的代码如下:
v="bot_id_string"
alias groupmessage=groupmessagefunction
groupmessagefunction() { curl -d '{"text" : '""', "bot_id" : '"$v"'}' https://api.groupme.com/v3/bots/post; }
我想指出,我要完成的是输入如下内容:
groupmessage "hello"
或
groupmessage hello
然后,它会发出以下命令:
curl -d '{"text" : "hello", "bot_id" : "bot_id_string"}' https://api.groupme.com/v3/bots/post
如果有任何误解,我希望这有助于澄清这个问题。
现在,我希望这将成为您的解决方案:
v=bot_id
curl -d '{"text" : "Test", "'$v'" : "(REDACTED)"}' api.groupme.com/v3/bots/post
您必须在 $v
周围使用 ' '
--> '$v'
因为这将允许 bash 在 curl -d ' ... '
内计算 $v
.
更新 1 的答案
据我所知,使用 eval
命令是更好的方法:
v="bot_id_string"
alias groupmessage=groupmessagefunction
groupmessagefunction() {
a="curl -d '{\"text\" : \"\", \"bot_id\" : \"$v\"}' https://api.groupme.com/v3/bots/post"
echo "$a" # this echo just for checking
eval "$a"; }
groupmessage "Hello is it working now ?"
我有一个 GroupMe 机器人,可以将消息发送到分配给它的聊天室,格式如下:
curl -d '{"text" : "text", "bot_id" : "(REDACTED)"}' https://api.groupme.com/v3/bots/post
所以,我决定为它创建一个别名,而不是每次我想发送消息时都输入这个怪物。
这是我尝试在我的 .bash_profile 中使用的内容:
alias groupmessage=groupmessagefunction
groupmessagefunction() { curl -d '{"text" : , "bot_id" : "(REDACTED)"}' https://api.groupme.com/v3/bots/post; }
谁能告诉我正确的格式是什么才能让它工作?谢谢!
更新 1:
我现在的代码如下:
v="bot_id_string"
alias groupmessage=groupmessagefunction
groupmessagefunction() { curl -d '{"text" : '""', "bot_id" : '"$v"'}' https://api.groupme.com/v3/bots/post; }
我想指出,我要完成的是输入如下内容:
groupmessage "hello"
或
groupmessage hello
然后,它会发出以下命令:
curl -d '{"text" : "hello", "bot_id" : "bot_id_string"}' https://api.groupme.com/v3/bots/post
如果有任何误解,我希望这有助于澄清这个问题。
现在,我希望这将成为您的解决方案:
v=bot_id
curl -d '{"text" : "Test", "'$v'" : "(REDACTED)"}' api.groupme.com/v3/bots/post
您必须在 $v
周围使用 ' '
--> '$v'
因为这将允许 bash 在 curl -d ' ... '
内计算 $v
.
更新 1 的答案
据我所知,使用 eval
命令是更好的方法:
v="bot_id_string"
alias groupmessage=groupmessagefunction
groupmessagefunction() {
a="curl -d '{\"text\" : \"\", \"bot_id\" : \"$v\"}' https://api.groupme.com/v3/bots/post"
echo "$a" # this echo just for checking
eval "$a"; }
groupmessage "Hello is it working now ?"