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 · 912 weeks and 5 days ago
If you leave out `:pass` (your password), you will be able to enter your password later in a more secure manner.
sirlancelot · 910 weeks and 6 days ago
Also note that you can't use an "!" as bash will error out with bash: !": event not found
XtCrAvE · 908 weeks and 6 days ago
or $history -c once you do that... [of course to clear the hisory]
chanux · 908 weeks and 1 day ago
This is resulting in 403 (Forbidden) errors today: 403 Forbidden: The server understood the request, but is refusing to fulfill it.
alesplin · 905 weeks and 4 days ago
Note: if cURL not installed, install it (ubuntu) : sudo apt-get install curl
cmdnix · 889 weeks and 1 day ago
You can use ! just use 'single quotes'
mandroid · 849 weeks and 3 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 · 842 weeks ago
i tried, but i get this answer: Basic authentication is not supported
rubo77 · 832 weeks and 2 days ago
so is there any other solution?
rubo77 · 825 weeks and 6 days ago
Basic authentication is not supported
ni3in3005 · 803 weeks and 1 day ago
Anyone know of something similar for identi.ca?
sfyn · 766 weeks and 5 days ago
-1 for plain-text password in the shell. Sorry, mate.
R3load · 675 weeks and 6 days 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: