move to github 点击打开链接
--------------------------
第二篇.
P.S. 显示效果不尽人意啊,html源代码编辑,每次在编辑器里调好好的,到页面效果就变掉了
搞半天没搞定,无语ing.........只能后面看看能不能调回来了.
------------------------------------------------------
7.磁盘操作... 11
8.系统操作... 12
9.网络相关... 13
10.shell操作... 14
11.其他命令... 14
12.常用按键... 15
13.命令选项大体通用含义... 16
14.常用命令别名... 17
7.磁盘操作
du | du会统计指定的目录或文件所占用的实际磁盘空间 -a全部文件 包括隐藏的 -m du系统默认输出是以KB,以参数-m表示以MB显示. -h以M为单位显示文件大小结果 -s统计此目录中所有文件大小总和 du -h—max-depth=1 仅查询一层 |
df | 查看硬盘使用情况
-h以友好的格式输出所有已安装文件系统的磁盘容量状态 -m以M为单位输出home目录的磁盘容量状态 -k以K为单位输出所有已安装文件系统的磁盘容量状态 -i报告空闲的、用过的或部份用过的(百份比)索引节点 -l仅显示本地文件系统 -t ext3仅显示文件类型为ext3的文件系统的磁盘状态 -x ext3仅显示文件类型不为ext3的文件系统的磁盘状态 -T除显示文件系统磁盘容量大小外还显示文件系统类型 |
关于df和du:df是从文件系统的角度来看的,du是从能够“看到”的文件的角度来看的。通常情况下,df与du的显示是一致的;但是当你在程序里打开一个文件并且持有这个文件的句柄,然后在另外的窗口把这个文件删除,这时候文件已经“看”不到了,也就是通过ls列举是看不到这个文件了,但是由于还有程序在使用这个文件,因此系统并没有把它真正删除,文件的内容还在文件系统里,但目录树上找不到它。这时候df看到的要比du大。有时候发现df与du的显示结果相差几十个G,就是这个原因 | |
fdisk | 观察硬盘之实体使用情形与分割硬盘用。 在console上输入fdisk -l /dev/sda,观察硬盘之实体使用情形。
fdisk -l 查看硬盘分区情况 |
cat /etc/fstab | 查看分区列表 |
mount [参数]要加载的设备 载入点 | 加载一个硬件设备 eg: mount /dev/cdrom mkdir /mnt/usb;(注:创建挂载目录) umount /mnt/usb |
|
|
8.系统操作
top | 查看后台程序,监控系统性能 top -d 2每两秒列新一次 |
ps | 查看进程: ps -e或ps -aux -->显示用户
ps aux | grep ps -aux|sort +5n看看哪个进程占用的内存最大 ps -ef |grep |
nohup cmd & | 后台运行 |
crontab | 格式为“分 时 日 月 周 命令 1>right 2>error” |
at | 执行一次 |
pstree -p | 查看进程树 |
free -m|-g|-k | 查看内存的使用 |
uptime | 显示目前系统开机时间(查看开机多久,多少人登陆,过去1,5,15分钟系统的负载) |
kill -9 pid | 杀进程send a signal to a process kill -9 发送的是SIG_KILL信号 ,具体发送什么信号可以通过 man kill 查看
killall -9 processname |
&与ctrl+z | 将程序放在前后台执行 Ctrl-z可以将前台进程挂起(suspend),然后可以用bg jobid让其到后台运行 job & 可以直接让job直接在后台运行 |
fgjobid | 将放在后台执行的程序再放回前台 |
sleep amount [units]
| units默认为秒(s),m表示分钟,h表示小时,d表示天 |
nice | 设置优先权 nice -n -5 vi &用root给一个nice值为-5,用于执行vi |
renice | 调整已存在优先权 |
ldd | 命令查看共享库文件 |
strace | 诊断运行的进程,分析程序运行错误的原因 |
sar | 收集、保存并报告系统信息 |
iostat |
|
netstat |
|
vmstat |
|
ab | Web服务器的性能 |
wireshark和tshark | 复杂网络诊断 |
uname -a | 查看内核版本 |
cat /proc/meminfo | 查看内存的信息 |
cat /proc/cpuinfo | 查看cpu的信息 |
cat /proc/version | 查看操作系统版本 |
9.网络相关
wget uri | 下载文件 |
curl –s uri | 请求一个url |
ifconfig | 查看网络地址信息 |
netstat | 查看网络连接情况
netstat -na | grep 2181 这个命令查看哪些机器连着这个端口 |
ping ip | ping一个ip地址 |
networkconfig;thizconfig | 网络设置 |
xmtr | 网络检测命令 |
mtr | 网络诊断工具 |
lynx | 将HTML页面转化文本文件 lynx -dump -stdin |
netstat -tupln | 查看本地所有的tpc,udp监听端口: (t=tcp, u=udp, p=program, l=listen, n=numric) |
iftop、nethogs | 查看占用带宽的进程和带宽 |
10.shell操作
clear | 清屏 或者<ctrl>+l |
echo str | 在标准输出上显示字符 |
history | 显示用户过去命用的命令 |
man command | 帮助命令 f/<Space bar> :每次向后翻一页 <Enter> :每次向后移动一行 <b> :每次向前翻一页 <ctrl-c> or q : 退出man命令. 官方文档:www.readhat.com
学习bash 用man bash来查看手册,很强大的操作 了解ascii表man asci man 7 signal |
type command | 后跟命令,区分某个命令是否为shell自带的还是由shell外部的独立二进制文件提供的 |
11.其他命令
alias | 可以查看命令别名命名的信息 .alias别名 |
bc | 交互式,支持浮点型 |
scp local_file_A username@other_host_name:dir_name
| 两台主机之间拷贝文件
/path/filename username@remoteIP:/path 将远程文件从服务器下载到本地
scp /path/to/localfile <host>:/path/to/remotefile scp <host>:/path/to/remotefile /path/to/localfile scp /path/to/localfile <user>@<host>:/path/to/remotefile scp <user>@<host>:/path/to/remotefile /path/to/localfile |
ssh | ssh <host> ssh <user>@<host> ssh -l <user> <host> ssh <host> “cmd”
学会打通ssh 了解ssh端口映射 当通过ssh远程工作时,可以使用screen或 dtach保存会话 |
xargs | 将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题 find /path -type f -print0 | xargs -0 rm |
md5sum | 制作md5码(128b)和校验文件 |
!! | 执行最近一次的命令 |
编译安装 | 源码编译安装(经典) |
12.常用按键
风骚的键位操作,如打boss时风骚的走位.......... <backspace> 删除 <ctrl-l> 清空屏幕,相当于clear tab 将命令匹配完整,自动补全路径/命令
<Ctrl+e> 光标跳至命令结尾 <Ctrl+a> 光标跳至命令开始 <ctrl+b>:光标左移一个字母 <ctrl+f>:光标右移一个字母 <ctrl+t>:交换光标位置前的两个字符(敲错顺序的时候) <ctrl+h>:删除光标前一个字符,同 backspace键相同 <ctrl+w>:移除光标前的一个单词 <ctrl+u>:清除光标前至行首间的所有内容【可用于删除整行已录入的命令】 <ctrl+k>:清除光标后至行尾的内容 <ctrl+y>:粘贴或者恢复上次的删除
上下键 查看之前执行的命令 <ctrl+p>前一个命令 <ctrl+n>后一个命令 <ctrl+r>:匹配历史命令,搜索之前打过的命令。会有一个提示,根据你输入的关键字进行搜索bash的history当查找到的命令不是你想要的命令,你还可以继续按Ctrl + R来查找下一个匹配的命令
<ctrl + s> 锁定键盘 <ctrl + q> 解锁键盘
<ctrl-c> 中断当前的命令并返回Shell.【终止当前进程】 <Ctrl-d> 中断当前的通信或从文件中退出【退出shell】 <ctrl + z> 暂停当前进程bg后台运行,fg转到前台(习惯bg,fg操作,效率大大提升)
如果熟悉vi诸多快捷键,嘿嘿 set -o vi (vim编辑器的环境,试试vim的命令) set -o emacs (恢复了) |
13.命令选项大体通用含义
-a | all | 全部 |
-b | binary | 二进制 |
-c | character | 字符 |
count | 计数 | |
-f | force | 强制 |
-i | interact | 交互 |
ignore | 忽略大小写 | |
-j | jump | 跳过 |
-l | long | 长格式 |
line | 行 | |
-m | move | 移除 |
-n | number | 行号 |
-p | parent | 上层父目录 |
-r | reverse | 逆序 |
-R | Recursion | 递归 |
-s | set | 设置 |
soft | 软连接 | |
-t | time | 时间戳 |
-v | view | 查看 |
-w | word | 单词 |
14.常用命令别名
alias ls='ls -GF' alias s='sudo' alias sa='sudo -u admin' alias m='mysql -u root' alias gu='iconv -f gbk -t utf-8' alias ug='iconv -f utf-8 -t gbk' alias ssh='ssh -2' alias ll='ls -al --color=tty' alias lftp="lftp username:passwd@ftpIP"
alias vd='vimdiff' alias tf='tail -f' alias af="awk -F ' \t' '{print NF}'" alias wl='wc -l' alias rmsvn='find . -name ".svn" -exec rm -rf {} \; >> /dev/null 2>&1' alias grep='grep --color=auto'
if [ $OS = "Linux" ]; then alias ls='ls --color -F' alias scp='scp -1' fi |