学习过程中用到的各种命令、工具等统计
一、Linux命令:
1、fdisk -l; //查看所有的分区
2、fdisk /dev/sdb; // 对某个分区进行操作
3、mkfs;//磁盘格式化,例如: mkfs -t ext4 /dev/sdb3
4、dumpe2fs /dev/sdb2;//观察文件系统:显示superblock、block数量、空闲block、group等信息
5、free -m; 查看内存和swap信息
6、fdisk分一个分区给系统作为swap,mkswap /dev/sdb3; swapon /dev/sdb3;
7、创建一个大型文件; mkswap /home/swap.file; swapon /home/swap.file
8、dd if=/dev/zero of=/home/dev bs=1M count=256
9、swapoff /home/swap.file;
10、mount -t ext4 /dev/sdb3 /home/space;//设备挂载
11、df -h; //查看挂载信息
12、umount /dev/sdb3;
13、在/etc/fstab中设置开机自动挂载。
14、mount -a; //检查/etc/fstab文件是否有错,并挂载里面定义的所有设备
15、du -ha /home/space;//文件系统的磁盘使用量或者目录使用量
16、echo $JAVA_HOME;
17、变量设置 name=nextflower; echo $name;
18、变量内容由其他命令提供:version=$(uname)
19、unset 变量名; #取消变量的定义
20、env; #查看环境变量
21、export var=flower; #普通变量变为环境变量
22、find / -name *.log -size +10000c -exec ls {} \;#查找大小大于10000字节的文件
23、find . -perm 755 -print; #按照文件权限来查找文件
24、find . -user nextflower -print; #按照文件所有者来查找文件
25、find / -group oracle -print; #按照文件所属的组来查找文件
26、find / -mtime -5 -print; #修改时间5天以内的文件
27、find / -mtime +3 -print; #修改时间在3日以前的文件
28、find / -nogroup -print; #查找无有效所属组的文件
29、find /etc -type d print; #查找/etc目录下所有的目录
30、sed 命令
31、grep命令
32、tail命令
33、sort命令
34、cut命令
35、history命令
36、top:动态观察程序的变化
37、 pstree -A; #打印系统所有进程树
38、pstree -Aup; #系统进程树同事显示PID与userSS
39、ps -l; #仅观察自己的bash相关进程
40、kill -l; #查看所有可用信号signal
41、kill -1 pid; #重新加载并启动
42、kill -9 pid; #强制杀掉一个进程
43、killall -9 sshd; #强制终止所有以sshd启动的进程
44、uname:查看系统和内核相关信息
45、 uname -a; #所有系统相关的信息
46、uname -s; #系统内核名称
47、uname -r; #内核版本
48、uname -m; #本系统的硬件名称,例如i686或x86_64等
49、uname -p; #CPU类型
50、uname -i; #硬件的平台
51、uptime:观察系统启动时间与工作负载
52、netstat:网络监控
53、netstat -a; #将目前系统上所有的已经连接、监听、Socket数据都列出来
54、netstat -t; #列出tcp网络包的信息
55、netstat -u; #列出udp网络包的信息
56、netstat -n; #以端口形式来显示
57、netstat -l; #列出目前正在监听的服务
58、netstat -p; #列出该网络服务的进程id.
59、vmstat:侦测系统资源变化
60、vmstat 1 3; #统计目前主机CPU状态,每秒1次,共计3次。
61、jobs: 查看当前工作状态
62、jobs -l; #除了列出job number与指令串外,同事列出PID的号码
63、jobs -r; #仅列出正在后台run的任务
64、jobs-s; #仅列出正在后台暂停的任务。
65、fg jobnumber; #将后台任务拿到前台执行
66、gzip -v man.config; #此种方式压缩完毕后,源文件消失
67、gzip -d man.config.gz; #解压缩文件,压缩文件消失
68、tar -zpcv -f /root/etc.tar.gz/etc; #
69、rpm -ivh package_name; #安装显示进度
70、rpm -qa | grep jdk; #列出所有已经安装在本机上的软件名称
71、rpm -ql jdk; #列出该软件所有的文件与目录所在的完整文件名
72、rpm -qR jdk; #查看jdk所需要的依赖
73、rpm -V jdk; #查看jdk是否被改动过
74、rpm -e jdk; #卸载
75、yum search; #解析/etc/yum.repos.d/*.repo文件
76、yum list;
77、yum install package_name;
78、/etc/init.d/httpd status;
79、/etc/init.d/httpd start;
80、 ifconfig: 网卡配置
ifconfig eth0 up;
ifup etho;
ifdown etho;
81、ping 主要透过ICMP包来进行整个网络的状况报告
82、ping -c 5; #执行5次ping操作
83、traceroute 追踪两部主机之间的路由
84、traceroute IP; #
85、chkconfig; #检查开机阶段启动的服务
86、tcpdump 从网卡抓取网络包
87、wget 从网络下载资源,morning存储到当前目录
88、wget -O hadoop.new http://www.hadoop.com/hadoop.zip; #下载并重新命名
89、wget --limit-rate=300k http;//www.hadoop.com; #限速下载
90、wget -c http://www.hadoop.com; #使用断点续传
91、rsync 数据镜像备份工具
92、curl 获取网页表单
二、工具使用
1、vim编辑器:
A、一般模式快捷键:
h:光标左移一个字符。
j:光标下移一个字符。
k:光标上移一个字符。
l:光标右移一个字符。
crtl+f:屏幕向下移动一页。
crtl+b:屏幕向上移动一页。
H:光标移动到当前屏幕最上方行的第一个字符。
M:光标移动到当前屏幕中间行的第一个字符。
L:光标移动到当前屏幕最下方行的第一个字符。
G:移动到文件的最后一行。
nG:移动到文件的第n行
gg:移动到首行。
n[Enter]:光标下移n行。
/work:向下查找单词word
?work:向上查找单词word
n:表示重复前一个查找操作。
N:与n相反。
:s/word1/word2/g 在当前行查找word1替换成word2
:%s/word1/word2/g 在当前文件查找word1替换成word2
:n1,n2s/word1/word2/g 在n1到n2行查找word1替换成word2
:1,$s/word1/word2/g 在1到最后一行查找word1替换成word2
:1,$s/word1/word2/gc 在替换前确认用户是否替换。
x:向后删除一个字符
nx:向后删除n个字符。
X:向前删除一个字符。
dd:删除光标所在行
ndd:删除光标所在行以下n行。
d1G: 删除光标所在行到第一行所有数据。
dG:删除光标所在行到最后一行所有数据。
d$:删除光标所在处到同行最后一个字符。。
d0:删除光标所在处到同行第一个字符。
yy:复制光标所在行。
nyy:复制光标所在向下n行。
y1G:复制光标所在行到第一行所有数据。
yG:复制光标所在行到最后一行所有数据。
y$:复制光标所在处到同行最后一个字符。
y0:复制光标所在处到同行第一个字符。
p:将已复制的数据粘贴到光标所在下一行。
P:将已复制的数据粘贴到上一行。
u:复原前一个操作。
B、编辑模式快捷键:
i:从光标所在处插入。
l:从所在行第一个非空白字符处插入。
a:从光标所在下一个字符插入。
A:从光标所在行最后一个字符处插入。
o:在光标所在处下一行插入新的一行。
O:在光标所在处上一行插入新的一行。
r:替换光标所在处的字符一次。
R:一直替换光标所在处文字直到按下ESC
C、命令模式快捷键:
:w[filename]:另存为filename
:r[filename]:读取filename到光标所在行后面
:n1,n2 w[filename] 将n1到n2行另存为filename
:q!
:wq!
:set nu
:set nonu
2、sed命令:
sed是非交互式文本处理工具。
A、sed "s/hadoop/hadoop2/g" demo.txt > demo2.txt
B、sed -i "s/hadoop/hadoop2/g" demo.txt; #修改原文件内容
C、sed "3s/hadoop/hadoop2/g" demo.txt; #只替换第三行
D、sed "1,2s/hadoop/hadoop2/g" demo.txt; #替换第1到第2行的文本
E、sed "s/l/L/1" demo.txt; #替换每一行的第一个l;
F、sed "s/g/G/2" demo.txt; #替换每一行的第二个;
G、sed "s/g/G/3g" demo.txt; #替换每一行的第3个以后的g;
H、sed "s/g/G/1;s/h/H/3g" demo.txt; #一次替换多个模式
I、sed "s/g/G/1" -e "s/h/H/3g" demo.txt; #效果同上
J、sed "1 i hi world" demo.txt; #在第一行后新加一行数据
K、sed "1 a hi world" demo.txt; #在第一行后追加
L、sed "/hive/d" demo.txt; #d动作删除匹配行
3、grep命令:
-?:同时显示匹配行的上下的?行
-b:打印匹配行所在的块号码
-c:只打印匹配的行数,不打印匹配的内容
-i:忽略大小写
-n:在匹配的行前面打印行号
--color:高亮显示命中
4、sort命令:
-n:按照数值排序
-u:不出现重复的行
-r:逆向排序
-t:指定分段的符号
-k:指定的第几个段
5、cut命令:
cut -b 2 demo.txt; #剪切每一行的第二个字节
cut -b 5-7 demo.txt; #剪切每一行的第5-7个字节
cut -b 9- demo.txt; #剪切每一行的第9个字节之后
cut -b -9 demo.txt; #剪切每一行的第9个字节之前
cut -d . -f 2 demo.txt; #以点为分隔符获取第二个字段
三、linux 常用操作
1、cat /etc/shells #查看系统提供了哪些种类shell
四、Java常用工具
1、jstat -gcutil ${PID} 2000
2、gclog http://iamzhongyong.iteye.com/blog/1989829
3、jmap -dump:live,format=b,file=jmap.dat ${PID}
4、jhat -J-Xmx4g jmap.dat
5、JConsole
6、jstack <pid>