【问题标题】:Post to Twitter using Terminal with CURL使用带有 CURL 的终端发布到 Twitter
【发布时间】:2009-09-11 09:00:34
【问题描述】:

我已经走到这一步了:

:~ curl -u username:password -d status="new_status" http://twitter.com/statuses/update.xml

现在,如何使用变量为它起别名,以便我可以轻松地从终端进行 twit?如何使别名通过不同的会话工作(当我关闭终端别名重置时)。

谢谢!

【问题讨论】:

  • 可悲的是,不再有效,并且已经好几年没有了。应该有一种方法可以将问题标记为不合时宜。

标签: unix curl twitter terminal


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    如果您按照前面的答案将其粘贴在脚本文件中:

    (a) 添加行

    #!/bin/sh
    

    在顶部;

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

    (c) 使其可执行,

    chmod +x tweet.sh
    

    【讨论】:

      【解决方案3】:

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

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

      这行得通吗?

      【讨论】:

      • 每当我这样做时,我总是得到一个空格,它最终会执行“-d status="mystatus"。有什么技巧可以删除 $1 变量中添加的空格吗?
      【解决方案4】:

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

      根据您使用的 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'
      

      Bash 别名使用等号。 bash 别名看起来更像这样:

      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'
      

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

      【讨论】:

        【解决方案5】:

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

        但如果你只是想使用终端在 Twitter 上发帖,有很多应用程序可以做到。 看看Rainbowstreamt

        使用 rainbowstream,以下几行可让您从控制台发送推文:

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

        【讨论】:

        • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
        • 谢谢@Hidde。我在答案中添加了详细信息
        猜你喜欢
        • 1970-01-01
        • 2014-05-09
        • 1970-01-01
        • 2018-05-12
        • 2015-07-26
        • 2020-01-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多