透過 timeout 設定指令最長可以跑多久。
timeout 3s sleep 1 echo "$?" 0 timeout 3s sleep 5 echo "$?" 124
軟體開發和生活瑣事
透過 timeout 設定指令最長可以跑多久。
timeout 3s sleep 1 echo "$?" 0 timeout 3s sleep 5 echo "$?" 124
之前看到的 shell script 說明,建立幾乎都是用 `function`:
function show-server-status() {
}
被 IDE 糾正以後才知道有規範 (Google 的 style guide),像是不使用 function 宣告、命名原則:
# [a-zA-Z0-9_] only
# https://stackoverflow.com/a/28115066
show_server_status() {
}
看來該找時間整理一下 scripts 了
先在控制台中啟用 rsync:

啟動後,就可以透過 SSH 來 rsync 資料。
但要注意的是,因為是透過 SSH,所以路徑不是單純的共用資料夾名稱,而是 Synology 掛載 volume 的路徑。若路徑錯誤,會顯示類似下方的錯誤訊息:
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(231) [Receiver=3.2.7]
以下圖來說,profile 資料夾是位於 儲存空間 2,因此實際路徑會是 /volume2/profile:

路徑確認後,就可以讓 rsync 跑起來:
rsync -av --partial --progress \
-e 'ssh -p 2121' \
./data johnroyer@my.synology:/volume2/profile/backup
記錄各家優酪乳的乳酸菌類型。
義美優酪乳:
統一 AB 優酪乳:
統一 LP33 機能優酪乳
福樂 自然零
光全
林鳳營益生菌優酪乳
Alpine Linux 主要是透過 apk 來管理套件。
新增套件:
apk update && \
apk add build-base autoconf automake && \
cd /path/to/source && \
make install && \
rm -fr /var/cache/apk/* && \
rm -fr /tmp/*
離開前要記得 rm -fr /var/cache/apk/* 清除暫存檔。
也可以使用 apk add --no-cache 安裝套件,這樣就不需要考慮暫存檔:
apk add --no-cache build-base autoconf automake &&
....