Linux新手生存笔记[3]——Linux常用命令(2)

回到全局目录

第二篇.

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显示.

-hM为单位显示文件大小结果

-s统计此目录中所有文件大小总和

du -h—max-depth=1

仅查询一层

df

查看硬盘使用情况

 

-h以友好的格式输出所有已安装文件系统的磁盘容量状态

-mM为单位输出home目录的磁盘容量状态

-kK为单位输出所有已安装文件系统的磁盘容量状态

-i报告空闲的、用过的或部份用过的(百份比)索引节点

-l仅显示本地文件系统

-t ext3仅显示文件类型为ext3的文件系统的磁盘状态

-x ext3仅显示文件类型不为ext3的文件系统的磁盘状态

-T除显示文件系统磁盘容量大小外还显示文件系统类型

关于dfdudf是从文件系统的角度来看的,du是从能够“看到”的文件的角度来看的。通常情况下,dfdu的显示是一致的;但是当你在程序里打开一个文件并且持有这个文件的句柄,然后在另外的窗口把这个文件删除,这时候文件已经“看”不到了,也就是通过ls列举是看不到这个文件了,但是由于还有程序在使用这个文件,因此系统并没有把它真正删除,文件的内容还在文件系统里,但目录树上找不到它。这时候df看到的要比du大。有时候发现dfdu的显示结果相差几十个G,就是这个原因

fdisk

观察硬盘之实体使用情形与分割硬盘用。

console上输入fdisk -l /dev/sda ,观察硬盘之实体使用情形。
console上输入fdisk /dev/sda,可进入分割硬盘模式

 

 fdisk -l  查看硬盘分区情况

 cat /etc/fstab 

查看分区列表

mount [参数] 要加载的设备 载入点

加载一个硬件设备

eg: mount /dev/cdrom
  cd /mnt/cdrom //进入光盘目录

 mkdir /mnt/usb;(注:创建挂载目录)
   mount /mnt/sda1 /mnt/usb
(注:挂载U)

 umount /mnt/usb

 

 

8.系统操作

 top 

查看后台程序,监控系统性能
 

top -d 2 每两秒列新一次
top -d -2 -p3690
查看某个PID
top -b -n 2 >/tmp/top.txt
top的信息进行2次,然后将结果输出到/tmp/top.txt

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直接在后台运行

 fg jobid

将放在后台执行的程序再放回前台

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服务器的性能

wiresharktshark

复杂网络诊断

uname -a

查看内核版本

cat /proc/meminfo

查看内存的信息

cat /proc/cpuinfo

查看cpu的信息

cat /proc/version

查看操作系统版本

9.网络相关

wget uri

下载文件

curl –s uri

请求一个url

ifconfig

查看网络地址信息

netstat

查看网络连接情况
 -i
显示网卡运行情况
 -r
查看主机的路由列表

 

netstat -na | grep 2181

这个命令查看哪些机器连着这个端口

ping ip

ping一个ip地址

networkconfigthizconfig

网络设置

xmtr

网络检测命令

mtr 

网络诊断工具

lynx

HTML页面转化文本文件

lynx -dump -stdin

netstat -tupln

查看本地所有的tpc,udp监听端口: (t=tcp, u=udp, p=program, l=listen, n=numric)

iftopnethogs

查看占用带宽的进程和带宽

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来查看手册,很强大的操作

了解asciiman asci

man 7 signal

type command

后跟命令,区分某个命令是否为shell自带的还是由shell外部的独立二进制文件提供的

 

11.其他命令

alias

可以查看命令别名命名的信息

.alias 别名
  alias dir='ls -l'   
输入dir,其实就相当于执行了ls -l

bc

交互式,支持浮点型

scp local_file_A username@other_host_name:dir_name

 

 

两台主机之间拷贝文件


将本地文件拷贝到服务器上
scp –rp

/path/filename username@remoteIP:/path

将远程文件从服务器下载到本地
scp -rp username@remoteIP:/path/filename /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)和校验文件

 !!

执行最近一次的命令

编译安装

源码编译安装(经典)
./configure              
检查系统信息(./configure --help | more 帮助信息,可以看到相关的参数设定)
make clean               
清除之前留下的文件
make                     
编译
make install            
安装
:源码包安装,一般先将文件解压,安装过程大致上面几步,具体说明一般见解压后目录里的(INSTALL,READEME说明.)

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>:匹配历史命令,搜索之前打过的命令。会有一个提示,根据你输入的关键字进行搜索bashhistory当查找到的命令不是你想要的命令,你还可以继续按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

 

你可能感兴趣的:(Linux常用命令)