快捷键
- 打开终端terminal:
CTRL + ALT + T - 从命令行回到图形界面:
Ctrl+Alt+F7 - 打开搜索:
alt+f2 - 从图形界面回到命令行:
Ctrl+Alt+F2 tab自动补全ctrl-r搜索命令历史ctrl-w删除最后的单词ctrl-u删除整行fn-<-or->光标移到行开头or结尾pstree -p显示进程树sudo rm /var/lib/apt/lists/* -vf
常用命令
- 查看内存:
free -m - 查看硬盘占用:
ls -al, du -h, ls -Rrs - 查找某目录下占用空间最大的10个文件:
sudo du -a /var | sort -n -r | head -n 10 - 查看硬盘占用情况:
du -h --max-depth=1 - 硬盘空间统计排序:
sudo du -a /var | sort -n -r | head -n 10 - 查看系统:
df -h - 修改用户密码:
sudo passwd root - 切换用户:
su root - 重启:
reboot,shutdown -r xx - 设置开机启动:
sudo /usr/sbin/update-rc.d -f nginx defaults - 杀掉进程:
kill -9 $(lsof -i tcp:3000 -t) - 杀死指定名字的进程:
killall xx - 查看输入历史:
history - 查看输入历史以xx开头的:
!xx - 显示当前路径:
pwd - 查看服务器ip:
ip addr - 在init.d下的脚本可以加入service:
service 服务 命令 - 查看本地语言设置:
locale - 修改语言全局设置:
vim /etc/default/locale - 替换文件内容:
sed -i 's/172.31.16.235/172.31.24.70/g' api/fabfile.py - 查找文件:
grep -5nr 'needSync: true' * - 查看端口占用:
netstat -an | grep 3306lsof -i:3232 - 查看系统版本:
lsb_release -a - 查看cpu情况:
lscpu - 立刻关机:
shutdown -h now
用户命令
- 添加用户(会加用户组及目录):
adduser user_name - 添加用户到组:
adduser user_name group_name - 添加用户(单纯加用户,其他需要指定):
useradd -m -s /bin/bash deploy - 设置密码:
passwd user_name - 修改文件权限:
chown -R deploy /var - 开机启动设置:
sudo update-rc.d [-n] name default [NN | SS KK],NN表示执行序号(0-99),SS表示启动时的执行序号,KK表示关机时的执行序号,SS、KK主要用于在脚本直接的执行顺序上有依赖关系的情况下。 - 开机启动移除:
sudo update-rc.d [-n] [-f] name remove - 查看当前目录下文件个数:
find ./ | wc -l - 停止某个进程:
pkill -INT geth
输入输出
- 把标准输出重定向到文件中:
> - 把标准输出追加到文件中:
>> - 重定向标准输入:
< - 把标准错误重定向:
2> - 把标准输出和标准错误合并:
>out.txt 2>&1 - 管道:
| - 导入环境变量:
export https_proxy=xxx - 卸载环境变量:
unset https_proxy
文件操作命令
- 当前目录:
. - 根目录:
/ - 当前家目录:
$HOME,~ - 删除文件夹:
rm -rf - 修改文件名:
mv file_name new_file_name - 回到上一级目录:
cd .. - 回到上一次目录:
cd - - sublime打开本级目录:
subl . - 新建文件夹:
mkdir file - 新建文件:
touch file - 查看文件详细信息:
stat - 给文件加上执行权限:
chmod +x file - 显示文件内容:
cat filename | tail -n +3000 | head -n 1000 - 逐页查看文件内容:
more/less - 显示本目录下文件的详细内容:
ls -ln - 查看改变中的文件内容:
tail -f file - 显示最后几行:
tail -n 1000 - 显示文件前几行:
head -n 1000 - 显示多少行后的:
tail -n +1000 - 查看文件行数:
wc -l filename - 查看文件大小:
du -sk file - 查看当前所有文件大小:
du -sh * - 查看文件夹大小:
du -sh - 查看本目录文件情况:
sudo du -h -d 1 - 解压文件:
tar xvf my_backup.tar - 清空(写入)文件:
echo "" > production.log - 清空文件:
sudo truncate -s 0 syslog - 复制文件和目录:
scp user@xx.com:/usr/local/sin.sh /home/xx - 建立链接:
ln - 建立软链接:
ln -s 源文件 目标文件 - find查找文件:
find <指定目录> <指定条件> <指定动作>, 比如find . -name 'my*' 搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件,可以使用xargs命令搭配使用 - whereis查找文件:
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息 - which搜索文件:
which在PATH变量指定的路径中,执行命令的位置
网络命令
- 下载文件:
wget 路径 - 查看端口占用情况(显示各种网络相关信息):
netstat -lnp | grep -E '80|8080' - 查看当前运行进程:
ps aux | grep nginx - 查看进程:
pstree -p | grep mongod - 查看端口运行情况:
telnet 127.0.0.1 11211 - 动态显示进程信息:
top(htop) - 查看telnet状态:
stats - 退出telnet:
control + ] quit - 定时执行任务:
crontab - 使用TCP或UDP协议的网络连接去读写数据:
nc - 远程操控:
tmux attach, tmux
免密码登录
ssh-keygen -t rsa本地机器生成keyscp -r id_rsa.pub root@ip:/root复制本地key到远程机器- 在
cp id_rsa.pub ~/.ssh/authorized_keys复制key到authorized_keys - 更新服务器:
ssh-keygen -R 服务器ip - 使用私钥生成公钥:
ssh-keygen -y -f id_rsa > id_rsa.pub
screen 后台执行任务
- 查看会话:
screen -ls - 切回会话:
screen -xr pid - 清除dead会话:
screen -wipe - 终止会话:
screen -S session_name -X quit
nohup 后台执行任务
- 执行命令:
nohup command & - 查看任务:
jobs
系统后台执行任务
- ./xxx » /dev/null &
修改hosts
hosts文件修改ip默认后两个后缀 使用二级域名需要三个,例如:
127.0.0.1 xx.dev
127.0.0.1 bbs.xx.dev
日志分析
翻墙
export http_proxy=’http://localhost:8118’ export https_proxy=’http://localhost:8118’ sudo /usr/local/sbin/privoxy /usr/local/etc/privoxy/config
- 启动:
sudo /usr/local/sbin/privoxy /usr/local/etc/privoxy/config
clash下载[https://github.com/Dreamacro/clash]
github下载问题
- 关闭ipv6:
networksetup -setv6off Wi-Fi - 打开ipv6:
networksetup -setv6automatic Wi-Fi
常见问题
- Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR解决办法:
export OPENSSL_ROOT_DIR=$(brew --prefix openssl
