Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unix 使用带有CURL的终端发布到Twitter_Unix_Curl_Twitter_Terminal - Fatal编程技术网

Unix 使用带有CURL的终端发布到Twitter

Unix 使用带有CURL的终端发布到Twitter,unix,curl,twitter,terminal,Unix,Curl,Twitter,Terminal,我走了这么远: :~ curl -u username:password -d status="new_status" http://twitter.com/statuses/update.xml 现在,我如何用变量来别名它,这样我就可以很容易地从终端进行twit了?如何使别名在不同会话中工作(当我关闭“终端别名重置”时) 谢谢 把它放在一个文件中,用参数1作为$1怎么样: # tweet.sh "post my status, moron!": curl -u username:passwo

我走了这么远:

:~ curl -u username:password -d status="new_status" http://twitter.com/statuses/update.xml
现在,我如何用变量来别名它,这样我就可以很容易地从终端进行twit了?如何使别名在不同会话中工作(当我关闭“终端别名重置”时)


谢谢

把它放在一个文件中,用参数1作为$1怎么样:

# tweet.sh "post my status, moron!":
curl -u username:password -d status="$1" http://twitter.com/statuses/update.xml

这样行吗?

把它放在一个文件中,用参数1作为$1:

# tweet.sh "post my status, moron!":
curl -u username:password -d status="$1" http://twitter.com/statuses/update.xml

这行得通吗?

您显然有别名命令:将其粘贴到~/.bashrc中,它将在bash shell启动时设置。(.shrc也适用于类似sh的壳。)

如果按照前面的回答将其粘贴到脚本文件中:

(a) 添加行

#!/bin/sh
在顶部

(b) 确保它在您的路径上,否则您必须在运行脚本时键入脚本的整个路径

(c) 要使其可执行

chmod +x tweet.sh

很明显,您有alias命令:将它粘贴到~/.bashrc中,它将在bash shell启动时设置。(.shrc也适用于类似sh的壳。)

如果按照前面的回答将其粘贴到脚本文件中:

(a) 添加行

#!/bin/sh
在顶部

(b) 确保它在您的路径上,否则您必须在运行脚本时键入脚本的整个路径

(c) 要使其可执行

chmod +x tweet.sh

您需要在主目录中创建一个文件,该文件将在每次打开新终端时被引用

根据您使用的shell类型,对文件的名称进行一些研究(tcsh查找名为.tcshrc的文件,bash查找.bashrc)

获得该文件后,通过运行以下命令使其可执行:

chmod +x name_of_file
然后,在该文件中创建您的别名(同样,您需要根据您使用的shell类型研究如何执行此操作)。对于tcsh,我的别名如下所示:

alias tw 'curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
alias tw='curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
Bash别名使用等号。bash别名看起来更像这样:

alias tw 'curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
alias tw='curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
注意“status=”之后命令中的更改。
\^
告诉代码行在别名本身之后插入传递的第一个参数

保存您的文件

然后,您可以通过在新终端中键入以下内容来运行twitter更新:

tw 'my first post to twitter via the terminal, using aliases'

不要忘记用转义字符转义“特殊”字符(如感叹号),
\
(即
\!

您需要在主目录中创建一个文件,每次打开新终端时都会引用该文件

根据您使用的shell类型,对文件的名称进行一些研究(tcsh查找名为.tcshrc的文件,bash查找.bashrc)

获得该文件后,通过运行以下命令使其可执行:

chmod +x name_of_file
然后,在该文件中创建您的别名(同样,您需要根据您使用的shell类型研究如何执行此操作)。对于tcsh,我的别名如下所示:

alias tw 'curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
alias tw='curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
Bash别名使用等号。bash别名看起来更像这样:

alias tw 'curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
alias tw='curl -u username:password -d status=\!^ http://twitter.com/statuses/update.xml'
注意“status=”之后命令中的更改。
\^
告诉代码行在别名本身之后插入传递的第一个参数

保存您的文件

然后,您可以通过在新终端中键入以下内容来运行twitter更新:

tw 'my first post to twitter via the terminal, using aliases'

不要忘记用转义字符转义“特殊”字符(如感叹号),
\
(即
\!

twitter不再支持基本身份验证。请使用OAuth。

twitter不再支持基本身份验证。请使用OAuth。

由于twitter不再支持基本身份验证,您必须使用OAuth来实现您的目标

但若你们只是想使用终端发布到Twitter上,有很多应用程序可以做到这一点。 看看或

使用rainbowstream,以下几行将允许您从控制台发送tweet:

$ sudo pip install rainbowstream
$ rainbowstream
[@yourscreenname]t whatever you want

由于twitter不再支持基本身份验证,因此您必须使用OAuth来实现您的目标

但若你们只是想使用终端发布到Twitter上,有很多应用程序可以做到这一点。 看看或

使用rainbowstream,以下几行将允许您从控制台发送tweet:

$ sudo pip install rainbowstream
$ rainbowstream
[@yourscreenname]t whatever you want

每当我这样做时,我总是得到一个空间,它最终会执行“-d status=“mystatus”。有没有删除$1变量中添加的空间的提示?每当我这样做时,我总是得到一个空间,它最终会执行“-d status=“mystatus”。是否有删除$1变量中添加空格的提示?虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面更改,仅链接的答案可能会无效。谢谢@Hidde。我在我的回答中添加了详细信息。虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接以供参考。如果链接页面更改,仅链接的答案可能会无效。谢谢@Hidde。我在我的回答中添加了一些细节,遗憾的是,这些细节已经不起作用了,而且已经好几年没有了。应该有一种方法将问题标记为不合时宜的。遗憾的是,这种方法已经不起作用了,而且已经有好几年没有了。应该有一种方法将问题标记为不合时宜。