shell常用命令的Tips

1.cd

cd - 返回上一次目录

cd 返回当前用户的家目录

2.mkdir

mkdir -p 创建多级目录

eg: mkdir -p test1/test2/test3

3.find

find -empty 查找空文档

find -user xxx 查看关于用户xxx的所有信息

find -mtime -1 查看1天内被修改过的档案

find -mtime +1 查看1天前被修改过的档案

4.du

du -h 人性化视界

du -s 只显示总容量

5.head

head -c 2K 显示前2KB的内容

head -n 显示前n行的内容

6.wc

wc -l 统计文件行

wc -c 统计文件字符

wc -w 统计文件单词

7.grep

grep -i 忽略大小写

grep -v 取反匹配

grep -w 匹配单词

grep --color 显示颜色

8.ln

ln -s 创建软连接

ln 创建硬链接

9.vim

hljk对应上下左右

gg移动光标至文件首行

G移动光标至文件末尾

nG移动光标至n行

^光标移动至当前行首字符

$光标移动至当前行末字符

fx光标移动至下一个x字符处

Fx光标移动至上一个x字符处

w光标向右移动一个单词

b光标向左移动一个单词

nw,nb光标向左/右移动n个单词

dd删除光标所在行

ndd删除n行

d$删除光标至行尾

J删除换行符

u撤销上一步操作

rx将光标当前字符替换为x

yy复制当前行

p粘贴至当前行后

P粘贴至当前行前

/自上往下查,n下一个N上一个

?自下网上查,N下一个n上一个

:s/xxx/bbb/g 替换光标当前行的xxx为bbb

:%s/xxx/bbb/g 替换所有行的xxx为bbb

:1,5s/xxx/bbb/g 替换1-5行的xxx为bbb

ZZ保存并退出

:set nu(or number) 显示行号

10:getfacl,setfacl

gerfacl 查看文件acl权限。

setfacl -m u:axeprpr:rwx xxx.sh 给文件添加特定用户的acl权限。

setfacl -b 删除所有acl条目 -x 删除指定的acl条目

-R 递归处理所有子文件或者目录

11.at,crontab

at 10:10 #单次计划任务

command

CTRL+d退出

at -l 查看用户计划任务

at -d 删除用户计划任务

at -c 查看at计划任务的具体内容

crontab 周期性计划任务

12.uptime

eg:

axe@axe:/etc/cron.daily$ uptime
02:50:56 up  6:09,  2 users,  load average: 0.00, 0.01, 0.05

可以查看系统当前时间,运行时间,在线用户数,最近1分钟,5分钟,15分钟的负载情况

13.df

df -hT -h人性化显示,-T显示文件系统类型

df -i 显示inode

ps.系统是通过inode(索引节点)来识别文件而不是文件名。inode记录了文件除文件名以外的其他信息,包括

1.文件字节数,2.userID,groupID,3.rwx权限,4.时间戳,5.链接数,6.block的位置

stat xxx 可以查看文件的inode信息

14.ifconfig,netstat

netstat -nuplt (使用数字形式的IP,端口号,用户ID替代名称信息|查看UDP连接信息|显示pid|查看正在监听的socket端口|查看TCP连接信息)

netstat -s 各协议数据统计

ifconfig eth0 down/up

ifconfig eth0 192.168.1.2 netmask 255.255.255.0 设置eth0网卡

15.route

route -n 查看路由信息(数字形式)

route add 目标网络 gw 网关地址

route del 目标网络

route add default gw 网关地址

16.ps,top

ps -ef / -axu 全格式显示进程信息

top -d 动态查看进程信息(刷新时间ps.默认为3s)

top -p 查看指定pid的进程信息

17.ping

1.本地回环,可测试本地网络协议是否正常工作。

2.ping本地ip,可测试本地网络接口是否正常

3.ping网关,测试网关是否正常工作

4.ping外部网络,测试服务商网络是否正常工作

18.traceroute

太复杂,详细:http://www.cnblogs.com/peida/archive/2013/03/07/2947326.html

19.nslookup,dig

先mark一下,回头补。

20.lsmod,modprobe,modinfo

lsmod可以显示当前加载的内核模块。包括模块名称,占用内存大小,是否在被使用。如果第三列为0,可以使用modprobe -r动态卸载。modprobe可用于动态加载。

modinfo用于查看内核模块信息

21.alias,unalias

定义别名,取消别名

原文地址:https://www.cnblogs.com/axeprpr/p/4820746.html