LINUX中常用操作命令
linux下查看负载的主要命令有下面一些:
top, uptime,w,vmstat
其他一些操作
cat /proc/cpuinfo :即可查看CPU信息,几个processor即为几个CPU;
sar:可以监控系统所有资源状态,sar -n DEV查网卡流量历史、sar -q 查看历史负载,最有用的就是查网卡流量,流量过大:rxpck/s大于4000,或者rxKB/s大于5000,则很有可能被攻击了,需要抓包分析;
free:查看当前系统的总内存大小以及使用内存的情况;
ps:查看进程,ps aux 或者 ps -elf,常和管道符一起使用,查看某个进程或者它的数量;
netstat:查看端口,netstat -lnp用于打印当前系统启动了哪些端口,netstat -an用于打印网络连接状况;
tcpdump:抓包工具分析数据包,知道有哪些IP在攻击;可以将内容写入指定文件1.cap中,显示包的内容,不加-w屏幕上显示数据流向;
wireshark:抓包工具,可以临时用该命令查看当前服务器上的web请求
1.cat命令
cat命令是一个直接将文件一下子全部输出到shell界面的命令,对于小文件cat比较好用,但是由于cat的一次性输出,使得对大文件的查看比较麻烦,而且有时当文件过长而超过shell的缓存范围时,可能无法产看文件的全部。
cat的用法:
cat [OPTIONS] FILE...
OPTIONS:
-n:显示时显示行号(包括空白行)
-b:显示时显示行号(不包括空白行)
-E:在每行行尾显示$符
-T:以^I替换tab符
注:tac命令与cat命令相反,它是逆序输出文件
2.more命令
more命令可以分屏查看文件,当到达文件末尾时自动退出。
more [OPTIONS] FILE...
more有一些快捷键:
空格建:向下翻屏
B键:向上翻屏
/pattern:使用正则表达式查找
Q键:退出
3.less命令
less命令与man命令类似,可以分屏查看文件,但尾部不会退出,常用快捷键有:
空格键:向下翻屏
B键:向上翻屏
Q键退出
/pattern或pattern:搜索
n:显示搜索的上一个
N:显示搜索的下一个
K键:向前翻一行
回车键:向后翻一行
4.tail命令
tail命令可以只产看文件的后几行。
tail的用法:
tail [OPTIONS] FILE...
OPTIONS:
-n NUMBER:指定查看的行数,可以省略n,直接写成-3等
-f:使tail保持活动状态,每当文件有尾部写入时,会将写入内容及时的输出出来
-s SECOND:与-f结合,指定-f的查看周期
6.head命令
head命令是产看文件头部前几行的,但是head没有tail出名,因为一般文件总是在尾部发生变化,但是head也是一个很方便的命令。head的用法和tail相同
7.cut命令
cut命令是按指定的分隔符(默认是空格)将每行分成几段,一般的cut要求文件每行的结构相同,例如/etc/passwd文件的结构:
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
cut的用法:
cut [OPTIONS] FILE...
OPTIONS:
-d:指定分隔符
-f:指定第几段
例如:
cut -d: -f1 /etc/passwd //显示当前主机上的所有用户
cut -d: -f1-3 /etc/passwd //显示1、2、3段
8.tr命令
tr是一个替换命令,可以替换文本中的一些字符。tr的用法比较特殊:
tr [OPTIONS] SET1 [SET2]
SET1是要替换的字符,SET2是替换后的字符,这里没有指定文件。
tr 'a-z' 'A-Z' < text.txt //将所有小写字母替换为大写
需要说明的是,由于tr后面无法跟文件名,所以当要对一个文件操作的时候,需要使用输入重定向。
另外,tr有一个-d选项,可以删除自定字符:
tr -d 'a' < text.txt //删除所有的字符a
9.wc命令
wc是一个文本统计命令,可以统计文本的字符数、行数等。
wc [OPTIONS] FILE...
OPTIONS:
-l:只显示行数
-w:只显示单词数
-c:只显示字符数
10.sort命令
sort命令是一个排序命令,默认以首字母进行排序。
sort [OPTIONS] FILE...
OPTIONS:
-r:逆序
-u:如果临近行重复,则只显示一次
-n:按数值排
-t:指定分隔符
-k:指定排序字段,与-t组合使用
-f:忽略大小写
-b:忽略开头的空白
-i:忽略非打印字符
-M:按月份排序,unknow<'JAN'除此之外,还有很多查看文件的命令,如强大的sed和awk命令,
常用指令
ls 显示文件或目录
-l 列出文件详细信息l(list)
-a 列出当前目录下所有文件及目录,包括隐藏的a(all)
mkdir 创建目录
-p 创建目录,若无父目录,则创建p(parent)
cd 切换目录
touch 创建空文件
echo 创建带有内容的文件。
cat 查看文件内容
cp 拷贝
mv 移动或重命名
rm 删除文件
-r 递归删除,可删除子目录及文件
-f 强制删除
find 在文件系统中搜索某文件
wc 统计文本中行数、字数、字符数
grep 在文本文件中查找某个字符串
rmdir 删除空目录
tree 树形结构显示目录,需要安装tree包
pwd 显示当前目录
ln 创建链接文件
more、less 分页显示文本文件内容
head、tail 显示文件头、尾内容
ctrl+alt+F1 命令行全屏模式
系统管理命令
stat 显示指定文件的详细信息,比ls更详细
who 显示在线登陆用户
whoami 显示当前操作用户
hostname 显示主机名
uname 显示系统信息
top 动态显示当前耗费资源最多进程信息
ps 显示瞬间进程状态 ps -aux
du 查看目录大小 du -h /home带有单位显示目录信息
df 查看磁盘大小 df -h 带有单位显示磁盘信息
ifconfig 查看网络情况
ping 测试网络连通
netstat 显示网络状态信息
man 命令不会用了,找男人? 如:man ls
clear 清屏
alias 对命令重命名 如:alias showmeit=”ps -aux” ,另外解除使用unaliax showmeit
kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。
打包压缩相关命令
gzip:
bzip2:
tar: 打包压缩
-c 归档文件
-x 压缩文件
-z gzip压缩文件
-j bzip2压缩文件
-v 显示压缩或解压缩过程 v(view)
-f 使用档名
tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩
关机/重启机器
Linux软件包管理
sudo dpkg -i tree_1.5.3-1_i386.deb 安装软件
sudo dpkg -r tree 卸载软件
sudo apt-get install tree 安装tree
sudo apt-get remove tree 卸载tree
sudo apt-get update 更新软件
sudo apt-get upgrade
:q 退出
:q! 强制退出
:wq 保存并退出
:set number 显示行号
:set nonumber 隐藏行号
/apache 在文档中查找apache 按n跳到下一个,shift+n上一个
yyp 复制光标所在行,并粘贴
h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)
用户及用户组管理
/etc/passwd 存储用户账号
/etc/group 存储组账号
/etc/shadow 存储用户账号的密码
/etc/gshadow 存储用户组账号的密码
useradd 添加用户名
userdel 删除用户名
adduser 添加用户名
groupadd 添加组名
groupdel 删除组名
passwd root 给root设置密码
su root
su – root
/etc/profile 系统环境变量
bash_profile 用户环境变量
.bashrc 用户环境变量
su user 切换用户,加载配置文件.bashrc
su – user 切换用户,加载配置文件/etc/profile ,加载bash_profile
更改文件的用户及用户组
sudo chown [-R] owner[:group] {File|Directory}
sudo chown root:root jdk-7u21-linux-i586.tar.gz
文件权限管理
更改权限
sudo chmod u+x g+w o+r filename
linux nc
tree
第一、系统查看命令
# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量
第二、资源/硬盘占用情况
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载
第三、磁盘和分区情况
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况
第四、网络查看
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息
第五、进程查看
# ps -ef # 查看所有进程
# top # 实时显示进程状态
第六、用户查看
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务
第七、系统服务情况
# chkconfig –list # 列出所有系统服务
# chkconfig –list | grep on # 列出所有启动的系统服务
第八、程序查看
# rpm -qa # 查看所有安装的软件包