2009-09-11 81 views
1

Twitter的我能走到今天:投遞到使用終端,捲曲

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

現在,我怎麼能這個別名使用變量,所以我可以很容易地從終端TWIT?如何使別名在不同的會話中工作(當我關閉終端別名重置時)。

謝謝!

+0

可悲的是,不再工作,有沒有好幾年。應該有辦法將問題標記爲不合時宜的。 – 2017-04-21 17:30:11

回答

3

你顯然有別名命令:將它粘貼在〜/ .bashrc中,它會在你的bash shell啓動時設置。 (.shrc也應該適用於SH-像炮彈。)

如果您在腳本文件中堅持它以前的答案提示:

(一)在添加行

#!/bin/sh 

最佳; (b)確保它在你的路徑上,或者當你想運行它時你必須鍵入整個腳本的路徑。

(C),以使其可執行,

chmod +x tweet.sh 
1

怎麼樣把它一個文件,然後使用參數1爲$ 1:

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

工作?

+0

每當我這樣做,我總是得到一個空間,它最終會做「-d status =」mystatus「。任何提示刪除$ 1變量中添加的空間? – Kevin 2013-06-10 19:27:25

1

您需要創建在您的家目錄中的文件,將獲得每一個新的終端打開時參考。

根據正在使用的shell的類型(tcsh在bash查找.bashrc時查找名爲.tcshrc的文件),對文件的名稱做一點研究。

一旦你的文件,使其可執行運行:

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' 

注後在命令中變「狀態=」。 \!^告訴代碼行插入通過別名本身傳遞的第一個參數。

保存您的文件。

你可以然後通過在新終端鍵入以下運行更新到Twitter:

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

不要忘了逃跑用的轉義字符,\「特殊」字符(如感嘆句)(即\!

4

Twitter不再支持基本身份驗證。請使用OAuth。

1

由於Twitter不再支持基本身份驗證,因此您必須使用OAuth來實現您的目標。

但是,如果你只是想使用終端發佈到Twitter,有很多應用程序可以做到這一點。 在Rainbowstreamt

隨着rainbowstream看一看,下面的線將讓你從控制檯鳴叫:

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

儘管此鏈接可能回答問題,但最好包含這裏的答案的基本部分,並提供鏈接供參考,鏈接的答案可能會失效,如果鏈接的頁面發生變化 – Hidde 2014-06-22 09:15:57

+0

謝謝@Hidde。我在答案中添加了詳細信息 – DTVD 2014-06-24 09:53:40