linux常用命令
文件查找
find [指定目录][指定条件][指定动作]
指定目录:
find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录指定条件:
-options,指定find命令的常用选项
文件名查找:-name "文件名"
权限查找: -perm 755
排除目录: "被排除的目录" -prune
文件所属用户: -user 用户
文件所属用户组别 -group 用户组
文件更改时间: -mtime -n/+n ( - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前)
文件更改时间对比: -newer file1 ! file2 (更改时间比文件file1新但比文件file2旧的文件)
按类别查询:-type ! -type(排除类别)
type:
b - 块设备文件。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。
f - 普通文件。
按文件大小:-size +n [c](大于n块,加c表示文件长度以字节计,一块=512字节)
指定动作:
-print,find命令将匹配的文件输出到标准输出
-exec,find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;,注意{ }和\;之间的空格 (查找后执行命令)
-ls,显示详细信息
find . -type f -print | xargs grep "hostname"
#用grep命令在所有的普通文件中搜索hostname这个词
whereis 参数 程序名
whereis命令只能用于程序名的搜索,
而且只搜索二进制文件(参数-b)、
man说明文件(参数-m)
源代码文件(参数-s)。
进程相关
ps[参数]
参数:
a 显示所有用户的进程(show processes for all users)
u 显示用户(display the process's user/owner)
x 显示无控制终端的进程(also show processes not attached to a terminal)
e 显示所有用户的进程(all processes)此参数的效果和指定"a"参数相同
f 用ASCII字符显示树状结构,表达程序间的相互关系(ASCII art forest)
ps -aux
#打印出所有进程
#显示结果
USER 哪个用户启动了这个命令
PID 进程ID
CPU CPU占用率
MEM 内存使用量
VSZ 如果一个程序完全驻留在内存的话需要占用多少内存空间
RSS 当前实际占用了多少内存
TTY: 终端的次要装置号码 (minor device number of tty)
STAT 进程当前的状态
"S":中断 sleeping,进程处在睡眠状态,表明这些进程在等待某些事件发生--可能是 用户输入或者系统资源的可用性;
"D":不可中断 uninterruptible sleep;
"R":运行 runnable;
"T":停止 traced or stopped;
"Z":僵死 a defunct zombie process
START 启动命令的时间点
TIME 进程执行起到现在总的CPU暂用时间
COMMAND 启动这个进程的命令
ps -ef
UID 用户号
PID 进程ID
PPID 父进程号
C CPU占用率
TTY 终端的次要装置号码 (minor device number of tty)
TIME 进程执行起到现在总的CPU暂用时间
COMMAND 启动这个进程的命令
top 参数
-c 显示完整的治命令
-i<时间> 设置间隔时间
-u<用户名> 指定用户名
-p<进程号> 指定进程
交互命令
k 终止一个进程。
i 忽略闲置和僵死进程。这是一个开关式命令。
q 退出程序Space 立即刷新
W 保存对top的设置到文件~/.toprc,下次启动将自动调用toprc文件的设置。
s 改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s
M 根据驻留内存大小进行排序
P 根据CPU使用百分比大小进行排序
T 根据时间/累计时间进行排序
显示:
PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称
文件操作
cp source dest 复制文件
cp -r sourceFolder targetFolder 递归复制整个文件夹
mkdir newfolder 创建目录
rmdir deleteEmptyFolder 删除空目录
rm -rf deleteFile 递归删除目录中所有内容
mv /temp/movefile /targetFolder 移动个文件,重命名
压缩文件
压缩文件 c
tar -czf test.tar.gz /test1 /test2
列出压缩文件列表 t
tar -tzf test.tar.gz
解压文件 xv
tar -xvzf test.tar.gz
网络相关
ifconfig
显示网络设备信息(激活状态的)
HWaddr 表示网卡的物理地址,即MAC地址
inet addr 用来表示网卡的IP地址
Bcast 广播地址,发给该网段所有计算机
Mask 掩码地址
第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)
第二行:网卡的IP地址、子网、掩码
第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节
第四、五行:接收、发送数据包情况统计
netstat 参数
-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
netstat -tln | grep 8080 查看端口8080的使用情况
lsof -i :8080
telnet 参数 IP
ssh username@IP
wget 参数 URL地址
-b, –background 启动后转入后台执行
-c, –continue 接着下载没下载完的文件
-O –output-document=FILE 把文档写到FILE文件中,用不同的名称保存
curl
#获取网页
curl "www.baidu.com"
#保存网页
-o 指定保存的网页名
-O 根据网页自动设置保存的文件名
curl -o baidu.html "www.baidu.com"
curl -O "www.baidu.com"
#网页重定向
#当我们浏览器中访问新浪网址http://www.sina.com的时候会自动跳转到http://www.sina.com.cn ,而curl命令并#不会自动跳转,此时需要指定 -L 参数。
curl www.sina.com
curl -L www.sina.com
#指定请求方式和传递参数
#-X 用来指定请求方式 常用的就是post和get,不指定默认是get请求
curl -X GET "www.xxxx.com?param1=1"
curl -X POST --data "param1=1¶m2=2" "www.xxxx.com"
#对请求参数进行编码
#用--data-urlencode参数对请求参数进行编码
curl -X POST --data-urlencode "param1=1¶m2=2" "www.xxxx.com"
#显示请求的详细信息
#-v 参数可以显示请求的详细信息,包括端口连接和http request头信息。
curl -v "www.baidu.com"
#显示响应的头信息
#-i 可以显示http response的头信息,同时也会显示网页的源码,如果只想显示头信息可以用 -I 参数
curl -i "www.baidu.com"
curl -I "www.baidu.com"
#断点续传
#用-C参数可以实现断点续传的功能
curl -C - -O "www.xxx.com/yyyy.mp4"
#上面这条命令可以在还未执行完成的时候结束掉重新再执行一次查看效果。
#表单文件上传
#使用 -F 参数,以向微信公众号新增临时素材为例
curl -F media=@test.jpg "https://api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE"
#设置请求的头信息
#使用 --header 参数
curl --header "Content-Type:application/json" "www.xxxxxx.com"
#指定客户端的设备
#使用 --user-agent 参数,有时候服务器会根据用户使用的设备返回针对此设备的页面。
curl --user-agent "User Agent" "www.baidu.com"
其他
#刷新环境变量
source /etc/profile
#内核版本
cat /etc/redhat-release
#系统版本
cat /etc/issue