自動 cowsay 和 ponysay

繼上次 cowsay 牛說 之後又要來發廢文了, 主要是因為在網路上看到 cowsay 的喪心病狂版本 ponysay,只能說哪天應該要寫個 adventure time 的版本。



1. 開啟 terminal 自動 cowsay:

開啟 terminal 自動 cowsay 其實很簡單,只要修改 ~/.bashrc 即可。

$ vim ~/.bashrc

加入下列腳本,它會從你的 cowfile 中選一隻出來說話。 /usr/share/cowsay/cows 是 ubuntu 的 cowfile 預設路徑。

#[start-20180815-cooper(cowsay)-add]#
cow_file=$(ls /usr/share/cowsay/cows | shuf -n 1)
declare -i name_length=${#cow_file}-4
fortune | cowsay -f ${cow_file:0:$name_length}
#[end-20180815-cooper(cowsay)-add]#

2. 安裝喪心病狂的 ponysay:

ponysay 是發布在 snap 上的一個套件https://snapcraft.io/ponysay

$ snap install ponysay

來看看效果如何,-F 會隨機選擇 ponyfile:

$ fortune | ponysay -F


3. ssh 登入顯示 ponysay:

先把我們加進 ~/.bashrc 的 script 註解掉,我們要換一個 ssh log in 的玩法。

先來裝個 openssh-server。

$ sudo apt-get update
$ sudo apt-get install openssh-server

ssh 自動登入要先產生一把鑰匙,再把鑰匙加入授權名單中。

$ ssh-keygen -t rsa -P ""

將鑰匙加入信任名單中,授權名單的權限必須是 600

$ cd ~/.ssh
$ cat id_rsa.pub >> authorized_keys
$ sudo chmod 600 authorized_keys

登入本機試試,格式是 user@ip。

$ ssh cooper@localhost

在 /etc/profile.d 裡加入 ponysay.sh,這個腳本。和 ~/.basrc 不太一樣的是 /etc/profile.d 裡的腳本只有 log in 時會被執行。

$ cd /etc/profile.d
$ sudo vim ponysay.sh

ponysay.sh 的內容如下,我們讓登入時隨機出現一隻 pony 噴垃圾話:

#!/bin/bash
fortune | ponysay -F

修改一下權限就完成啦,下次你 ssh 就會有一隻吵你的 pony XD 。

$ sudo chmod +x ponysay.sh
$ ssh cooper@localhost

留言

熱門文章