我的cheatsheet v2
简单点,说话的方式简单点...
工作环境部署 workspace deployment
OS X
- 安装软件:
- iterm2
- 导入配置文件
- chrome
- 同步
- pycharm pro
- 破解
- 坚果云
- 搜狗输入法
- Karabiner
- hyper/window/application
- Moon
- 设置在menu bar显示
- iterm2
OS X 一键部署
sudo chsh -s /bin/zsh
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
sudo /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install python
brew install python3
brew install jq
brew install htop
brew install ncdu
sudo pip3 install you-get
sudo pip install git+https://github.com/jeffkaufman/icdiff.git
Ubuntu 命令行环境
Ubuntu 一键部署
sudo apt-get install jq
sudo apt-get install htop
sudo apt-get install ncdu
sudo apt-get install ack-grep
sudo apt-get install ranger
terminal篇: ubuntu terminal / OS X iterm2
终端快捷键 terminal shortcut
- Ctrl+l 清屏
- Ctrl+w 删掉前一个词
- Ctrl+u 剪切光标前的全部内容
- Ctrl+k 剪切光标后的全部内容
依赖 dependency 解决日志 log
ubuntu
- sudo apt install -f 自动安装依赖
- sudo dpkg -i filename.deb 安装deb安装包
命令篇
系统监控 system monitoring
- top/iotop/powertop/nethogs 普通监控/按磁盘写入排序/按耗电量排序/按网络流量排序
- htop
- tail 跟踪命令
tail -n 5 -f test.log
某个命令在后台运行,并产生log, 监控log文件
搜索查找 search and index
- find 遍历查找文件
find . -name "[a-z]*[4-9].log"
find path options -exec command options {} \;
find path options -ok command options {} \;
find / -size +20M
搜索文件 -exec 代表对找到的文件执行命令,-ok代表对每个操作进行确认
- locate
- which 查看当前默认的命令是哪一个
- whois
文件管理 file system
- jq 格式化查看json文件
cat json_raw.txt | jq .
- du 古老的文件大小查看命令,别用了
- ncdu 可视化的空间分析程序,用这个
- rsync 文件同步
rsync -vach src tar - ranger:内容浏览/预览
系统和硬件信息 system and hardware information
- uname 查看系统信息
uname -a
uname -r
查看内核版本
- whoami 查看登录用户名称
文本处理 text
- grep
- ack, ack-grep: 增强版grep
- ag 号称比ack, grep更强
- tar 压缩解压
tar -zxvf xxx.tar.gz 解压文件
tar -zcvf xxx.tar.gz xxx 压缩文件
- xargs 参数过滤器
ls *.jpg | xargs -n1 -I cp {} /data/images 复制所有指定类型文件到一个目录
find . -name "*.pdf" | xargs tar -zcvf xxx.tar.gz 将所有制定类型的文件打包压缩
cat url_list.txt | xargs wget -c 将列表文件中的所有url依次下载
- awk 强大的文本处理工具,按行处理
使用方法:
awk '{pattern + action}'
ll | awk '{print $9}' 列出所有文件的文件名
head - n 10 xxx.txt | awk '{print NF}'
head -n 10 creditcard.csv | awk -F "," '{print NF}'
查看文件有几列,经常用来查看数据格式
或者查看文件的列数,但是使用不同的分割符
- sed 用来替换非常好用
使用方法:
sed 's/要被取代的字串/新的字串/g'
/sbin/ifconfig eth0 | grep 'inet addr' | sed 's/^.*addr://g' | sed 's/Bcast.*$//g'
查看本机以太网ip地址,并去掉多余的信息
网络相关 networks
curl ifconfig.me 查看本机外网ip
hostname 查看主机名称
界面美化 inferface modify
column -t 格式化输出命令的结果
uname -a | column -t
- tmux 分屏工具
tmux new -s session-name 新建一个session
tmux ls / Ctrl+s 显示所有session
tmux a -t session-name 接入session
tmux detach / Ctrl+b 断开session
Ctrl+b $ 重命名session
Ctrl+b , 重命名window
Ctrl+b % 水平分割
Ctrl+b " 竖直分割
Ctrl+b x 关闭window
自定义命令 bash aliases
alias waitit="inotifywait -mrq --format '%Xe %w%f' -e modify,create,delete,attrib" 监控目录
alias tmk ="tmux kill-session -t"
alias ta ="tmux a"
alias cd='cd_and_ll(){ cd $1; clear; ls -lh; }; cd_and_ll'
alias ll='ls -lh'
alias lk='put2insp(){ cp $1 /home/liujiashu/iso/inspect_pics; }; put2insp'