Update twitter via curl

curl -u user:pass -d status="Tweeting from the shell" http://twitter.com/statuses/update.xml

166
By: adamm9
2009-02-05 18:33:23

6 Alternatives + Submit Alt

  • An improvement of the original (at: http://www.commandlinefu.com/commands/view/2872/update-twitter-via-curl) in the sense that you see a "from cURL" under your status message instead of just a "from API" ;-) Twitter automatically links it to the cURL home page. Show Sample Output


    14
    curl -u twitter-username -d status="Hello World, Twitter!" -d source="cURL" http://twitter.com/statuses/update.xml
    MyTechieself · 2009-12-08 14:54:33 1
  • Doesn't require password (asks for it instead) Show Sample Output


    11
    curl -u user -d status="Tweeting from the shell" http://twitter.com/statuses/update.xml
    matthewbauer · 2009-08-05 02:24:01 2
  • This version of tweet() doesn't require you to put quotes around the body of your tweet... it also prompts you for password. It will still barf on a '!' character.


    7
    tweet () { curl -u UserName -d status="$*" http://twitter.com/statuses/update.xml; }
    bartonski · 2009-11-07 06:54:02 0
  • Found it on snipt, pok3, is it yours? I put my user = m33600, the password and the status was my robot message: Settima robot message: ALARM ZONE 3 (sent via command line). Now bots may have their identity on twitter... Show Sample Output


    2
    curl -u YourUsername:YourPassword -d status="Your status message go here" http://twitter.com/statuses/update.xml
    m33600 · 2009-06-27 21:47:48 5
  • Type the command in the terminal and press enter to create the tweet() function. Then run as follows: tweet MyTwitterAccount "My message goes here" It will prompt you for password. Make sure that you use escape "\" character in message for showing varialbles or markup.


    0
    tweet(){ curl -u "$1" -d status="$2" "http://twitter.com/statuses/update.xml"; }
    Code_Bleu · 2009-08-23 16:56:24 1

What Others Think

Be carefull not to do that in a multi-user machine, since your password will be visible in the process listing for as long as curl is running.
kov · 881 weeks and 6 days ago
If you leave out `:pass` (your password), you will be able to enter your password later in a more secure manner.
sirlancelot · 880 weeks ago
Also note that you can't use an "!" as bash will error out with bash: !": event not found
XtCrAvE · 878 weeks ago
or $history -c once you do that... [of course to clear the hisory]
chanux · 877 weeks and 2 days ago
This is resulting in 403 (Forbidden) errors today: 403 Forbidden: The server understood the request, but is refusing to fulfill it.
alesplin · 874 weeks and 5 days ago
Note: if cURL not installed, install it (ubuntu) : sudo apt-get install curl
cmdnix · 858 weeks and 2 days ago
You can use ! just use 'single quotes'
mandroid · 818 weeks and 4 days ago
Just start the command with a space (if it includes your password)so that its not stored in your .bash_history file. its safer that way.
nssy · 811 weeks and 1 day ago
i tried, but i get this answer: Basic authentication is not supported
rubo77 · 801 weeks and 3 days ago
so is there any other solution?
rubo77 · 794 weeks and 6 days ago
Basic authentication is not supported
ni3in3005 · 772 weeks and 2 days ago
Anyone know of something similar for identi.ca?
sfyn · 735 weeks and 6 days ago
-1 for plain-text password in the shell. Sorry, mate.
R3load · 645 weeks ago

What do you think?

Any thoughts on this command? Does it work on your machine? Can you do the same thing with only 14 characters?

You must be signed in to comment.

What's this?

commandlinefu.com is the place to record those command-line gems that you return to again and again. That way others can gain from your CLI wisdom and you from theirs too. All commands can be commented on, discussed and voted up or down.

Share Your Commands



Stay in the loop…

Follow the Tweets.

Every new command is wrapped in a tweet and posted to Twitter. Following the stream is a great way of staying abreast of the latest commands. For the more discerning, there are Twitter accounts for commands that get a minimum of 3 and 10 votes - that way only the great commands get tweeted.

» http://twitter.com/commandlinefu
» http://twitter.com/commandlinefu3
» http://twitter.com/commandlinefu10

Subscribe to the feeds.

Use your favourite RSS aggregator to stay in touch with the latest commands. There are feeds mirroring the 3 Twitter streams as well as for virtually every other subset (users, tags, functions,…):

Subscribe to the feed for: