启动新会话:
tmux [new -s 会话名 -n 窗口名]
恢复会话:
tmux at [-t 会话名]
#include <functional> | |
namespace functional { | |
template <typename Function> struct function_traits; | |
template <typename ClassType, typename ReturnType, typename... Args> | |
struct function_traits<ReturnType(ClassType::*)(Args...) const> { | |
using function = const std::function<ReturnType(Args...)>; | |
}; |
# Ask for the user password | |
# Script only works if sudo caches the password for a few minutes | |
sudo true | |
# Install kernel extra's to enable docker aufs support | |
# sudo apt-get -y install linux-image-extra-$(uname -r) | |
# Add Docker PPA and install latest version | |
# sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 | |
# sudo sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list" |
listening() { | |
if [ -z "$1" ]; then | |
lines=$(lsof -P -s TCP:LISTEN -i TCP | tail -n +2) | |
pairs=$(echo -n "$lines" | awk '{split($9,a,":"); print $2":"a[2]}' | uniq) | |
format_string="%5s %5s %s\n" | |
if [ -n "$pairs" ]; then | |
printf "$format_string" "PORT" "PID" "COMMAND" | |
for pair in $pairs; do |
#我的 Vim 指令筆記
##vim 的三種模式 ###模式
輸入模式
:輸入內文。指揮模式
:也叫指令模式,主要是進入到可以對文件做修改,複製,剪下貼上,游標移動等動作。執行模式
:文件存檔,離開等等行為。###常用模式的切換
Esc
#!/usr/bin/env bash | |
curl https://s3.amazonaws.com/heroku-jvm-buildpack-vi/vim-7.3.tar.gz --output vim.tar.gz | |
mkdir vim && tar xzvf vim.tar.gz -C vim | |
export PATH=$PATH:/app/vim/bin |
/** | |
* box-shadow vs filter: drop-shadow | |
*/ | |
body { | |
background: #ddd; | |
font: 16px/1 sans-serif; | |
} | |
div { | |
margin: 100px; |