如何在別名中使用變量?例如,如果pbcopy允許我訪問剪貼板(複製的IP地址)並將其分配給$ip
,我可以複製一個IP地址,然後使用alias
,如下面的失敗示例。使用Mac終端中的變量創建別名
alias go='ip=pbpaste | ssh $ip -l pete'
如何在別名中使用變量?例如,如果pbcopy允許我訪問剪貼板(複製的IP地址)並將其分配給$ip
,我可以複製一個IP地址,然後使用alias
,如下面的失敗示例。使用Mac終端中的變量創建別名
alias go='ip=pbpaste | ssh $ip -l pete'
無需創建一個變量或管道,只需使用一個子shell:
alias go='ssh $(pbpaste) -l pete'
是的,非常感謝! – user1541542 2012-08-12 21:44:18
另一種選擇是到位的別名的使用功能,功能可以使用參數:
function go {
ssh "$1" -l pete
}
複製IP地址後,您可以鍵入「go」,使用Command-V粘貼IP地址,然後按回車。
也可以複製接受的答案,以避免粘貼手動地址:
function go {
ssh $(pbpaste) -l pete
}
使這裏真正的消息是開始考慮在外殼的功能,而不是別名方面,根據bash的,因爲手冊頁
對於幾乎所有的用途,別名都被shell函數取代。
參見:http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/pbcopy.1.html – 2012-08-12 16:56:43
命令-V組合鍵複製到剪貼板中的內容進入終端窗口的命令行。您可以突出顯示所需的文本,並使用Command-C將其複製到剪貼板。你在找別的東西嗎?例如,我經常使用這些將瀏覽器中的信息(例如堆棧溢出)複製到文件中進行測試。 – 2012-08-12 17:02:01
我想將複製的IP地址導入命令以自動執行多次重複的ssh登錄。 x =剪貼板。然後我的腳本或別名將輸入:ssh root @ x。我意識到它沒有那麼多的打字,但每天50次使它值得它 - 再加上我將合併的各種設備有不同的語法。 – user1541542 2012-08-12 17:18:16