more bash shell command

更多bash shell命令

4.1 监控程序

4.1.1 进程查看

       ps默认只显示属于当前用户并正在当前终端中运行的进程。

 

       Linux系统中使用的GNU ps命令支持3中不同的命令行:

l  Unix类型参数:前面有一个短划线;

l  BSD类型参数:前面没有短划线;

l  GNU长参数:前面有双短划线;

 

ps –H 可以将进程组织为分层格式,可以显示哪些流程是随其他进程一起启动的。

4.1.2 实时进程监控

       top命令可以内存中换进换出的进程,它是实时模式,而ps只能显示特定时间点的信息。

4.1.3 停止进程

       linux中,各进程使用信号相互通信。大多数精心编写的应用程序都能够接受标准Unix进程信号,并对此作出响应。

Linux进程信号

SIGHUP     终止进程     终端线路挂断
SIGINT     
终止进程     中断进程
SIGQUIT   
建立CORE文件终止进程,并且生成core文件
SIGILL   
建立CORE文件       非法指令
SIGTRAP   
建立CORE文件       跟踪自陷
SIGBUS   
建立CORE文件       总线错误
SIGSEGV   
建立CORE文件       段非法错误
SIGFPE   
建立CORE文件       浮点异常
SIGIOT   
建立CORE文件       执行I/O自陷
SIGKILL   
终止进程     杀死进程
SIGPIPE   
终止进程     向一个没有读进程的管道写数据
SIGALARM   
终止进程     计时器到时
SIGTERM   
终止进程     软件终止信号
SIGSTOP   
停止进程     非终端来的停止信号
SIGTSTP   
停止进程     终端来的停止信号
SIGCONT   
忽略信号     继续执行一个停止的进程
SIGURG   
忽略信号     I/O紧急信号
SIGIO     
忽略信号     描述符上可以进行I/O
SIGCHLD   
忽略信号     当子进程停止或退出时通知父进程
SIGTTOU   
停止进程     后台进程写终端
SIGTTIN   
停止进程     后台进程读终端
SIGXGPU   
终止进程     CPU时限超时
SIGXFSZ   
终止进程     文件长度过长
SIGWINCH   
忽略信号     窗口大小发生变化
SIGPROF   
终止进程     统计分布图用计时器到时
SIGUSR1   
终止进程     用户定义信号1
SIGUSR2   
终止进程     用户定义信号2
SIGVTALRM
终止进程     
虚拟计时器到时

Linux提供了两个命令用于发送进程信号给运行中的进程:

l  kill命令

n  只能使用进程PID来终止信号,将发送TERM命令给指定的PID

l  killall命令

n  该命令非常强大,可以根据进程的名称来停止进程,还允许使用通配符,它对于处理出错的系统非常有用。

4.2 监控磁盘空间

4.2.1 挂载介质

       mount –t type device directory

       mount –a :挂载/etc/fstab文件中指定的所有文件系统

其中可能的类型为:

l  vfat Windows长文件系统

l  ntfs Windows高级文件系统

l  iso9660 标准CD-ROM文件系统

常用的选项:

l  ro:以只读形式挂载;

l  rw:以读写形式挂载;

l  user:允许普通用户挂载文件系统;

l  check=none:挂载文件系统,而不执行完整性检查;

l  loop:挂载某个文件

4.2.2 使用df命令

       某个设备上有多少可用磁盘空间,较常用的参数为-h,用于以可读形式显示磁盘空间。

4.2.3 使用du命令

       du命令显示当前目录下的所有的文件、目录和子目录,并显示各文件或目录占用了多大空间。可以使用参数-s来汇总各自变量。

4.3 操作数据文件

4.3.1 数据排序

       sort:默认按照标准字符排序,所以如果是数字,需要加上参数-n来将其识别为数字而不是字符,并根据数值大小对它们进行排序;使用-M参数,可以按照月份排序;使用-k-t参数可以方便对使用字段的数据进行排序,其中-t参数用于指定字段分隔符,-k参数用于指定排序的字段。

       比如可以对一个文件夹中的所有文件大小进行一个排序:du –sh * | sort –n即可。

4.3.2 搜索数据

       grep patterm file

可用使用-v参数来反向搜索;使用-n参数显示与模式匹配的数据所在的行号;使用-c参数显示有多少行包含匹配模式;使用-e参数指定多个匹配模式;

       egrep命令式grep命令的一个分支,它允许您指定POSIX扩展的正则表达式,即使用多个字符指定匹配模式;fgrep命令则允许您使用一列由换行符分隔的固定字符串值来指定匹配模式。

4.3.3 压缩数据

Linux文件压缩格式:

l  *.Z       compress 程序压缩的档案; 

l  *.bz2     bzip2 程序压缩的档案; 

l  *.gz      gzip 程序压缩的档案; 

l  *.tar     tar 程序打包的数据,并没有压缩过 

l  *.tar.gz  tar 程序打包的档案,其中并且经过gzip 的压缩!

l  *.zip     zip 程序压缩文件

l  *.rar     rar 程序压缩文件

使用bzip2的文件可以使用bzcat命令查看内容

4.3.4 归档数据

       虽然zip命令在压缩和归档数据方面格外出色,但是它不是UnixLinux世界中的标准工具。目前,UnixLinux中最流行的归档工具是tar命令。

basic bash shell command

基本的bash shell命令

启动shell

       启动的默认shell可以通过/etc/passwd的最后一个字段得知。

shell提示符

       启动终端模拟包或者从Linux控制台登录后,就可以访问shell CLI提示符了,提示符是通往shell的大门,是输入shell命令的地方。

       控制命令行提示符的环境变量有两个PS1PS2,可以通过ehco $PS1/2来查看。所以如果想修改提示符,只需要给PS1PS2重新赋值即可。

       Bash shell提示符字符:

转义字符

 描述

\a

ASCII 字符(alert, BELL, 0X07

\d

 日期(formatweekday month date

\D{format}

 格式化的日期和时间(由 strftime 解释格式)

\e

ASCII 字符(escape, ESC, 0X1b

\h

 主机名(主机名中 . 字符之前的部分)

\H

 完整的主机名

\j

 

\l

 当前 shell 终端设备名字(如 tty1

\n

 换行(光标停留在提示符字符串下一行第一个字符)

\r

 回车(光标停留在提示符字符串第一个字符串)

\s

shell 的名字(默认为 bash

\t

24 小时制时间(formathour:minute:second

\T

12 小时制时间(formathour:minute:second

\@

12 小时制时间(formathour:minute am/pm

\A

24 小时制时间(formathour:minute

\u

 当前登陆用户的用户名

\v

bash 的版本号(version,如 4.2

\V

bash 的发行号(version + patch level,如 4.2.24

\w

 当前工作目录

\W

 当前工作目录的文件名部分

\!

 当前命令在历史缓冲区中的位置

\#

 命令数编号(不包括空命令)

\$

 如果 $UID=0,则输出一个 # 字符,否则输出 $ 字符

\nnn

 三位八进制数字 n 表示的 ASCII 字符

\\

 反斜线

\[

 开始一个非打印字符序列(如颜色转义序列之前)

\]

 结束一个非打印字符序列(如颜色转义序列之后)

bash手册

       可以通过man命令查看相应的手册。

文件系统导航

Linux文件系统

       注意和Windows的区别,分隔符分别为/\

Linux通用目录

/usr/bin;/bin 用于存放常用的可执行文件、命令
/sbin
存放系统的可执行文件
/root
超级用户的目录
/home/user
普通用户的目录
/media/CDRom
光驱目录
/media /floppy
软驱目录
/etc
系统的主要配置文件
/tmp
普通用户或程序临时存放或者生成的文件存放点
/boot
系统内核和系统启动时所使用的文件
/dev
机器中硬件设备目录

/usr 存放系统应用程序或与命令相关的系统数据
/Lost+Found
系统异常关机或崩溃时,遗失的片段
/var
系统运行过程中经常变化的文件
/proc
驻留在内存中的虚拟文件系统
/lib,/usr/lib,/usr/local/lib
存放系统所使用的共享函数库

/mnt 挂载目录,另一个可移动媒体设备常用的挂载点

/opt 可选目录,常用于存储可选软件包

/var 可变目录,用于经常更改的文件,比如日志文件

文件和目录列表

基本列表

       ls –R 显示包含在当前目录的所有目录中的文件。

文件处理

链接文件

       链接是目录中的占位符,指向文件的真实位置。Linux中有两种不同的链接类型:

l  符号链接,又称软链接;

l  硬链接;

查看文件内容

查看文件统计数据

       stat filename :可以查看filename的文件状态的完整摘要。

查看文件类型

file filename 可以查看文件内部并确定文件的类型。

file命令将文件分为以下3类:

l  文本文件:包含可打印字符的文件;

l  可执行文件:可以在系统运行的文件;

l  数据文件:包括不可打印的二进制字符的文件,但是不可以在系统运行。

查看整个文件

       在使用more查看文件的时候,输入v就可以进入vim编辑器

查看部分文件

       tail 默认显示文件的最后10行;

       head 默认显示文件的开头10行。