Nitro's

Nov 12, 2015 - Comments - dev

Linux Shell (1)-基础、文件、监控进程

0) 脚本文件

#      为注释行shell不处理,但第一行#!/bin/bash为特例,标示着采用何种shell运行

`` 将内部命令行的执行结果赋值

>       输出重定向,覆盖

>>     输出重定向,追加

<       输入重定向

<<     指定一个结束符,并以此结束符结束输入

|         管道符

exit 退出状态

            0              命令完成

            1              未知错误

            127          无法找到命令

                    130           Ctrl+C终止

1)  shell

提示符由变量PS1、PS2控制,通过格式符可以进行定制:PS1=”\h\t\w$”

Ubuntu中的sh默认指向为dash而非bash,这个需要注意。

2) ls

-R 文件以及文件夹缩略信息

-l  文件类型+权限+硬链接数+所属用户+所属组+大小+修改时间+名字

dr–r–r–:

1:文件类型 d目录、-文件、c字符设备、b块设备、l链接、n网络设备

rwx分别为读、写、执行权限

2-4:  针对文件所有者

5-7:  针对用户组成员

8-10:针对其他任何人

-i  显示文件索引号

-S 按大小排序、ls -X按扩展名排序

3) **touch **

除了新建文件还可以修改文件信息,比如时间戳

4) cp

-r 递归复制文件

-R 递归复制文件夹

-p 保留文件属性

-l 在同一挂载点下创建硬连接(索引号一致)

-s 创建软连接

5) **mv **

会保留原有文件索引号和时间戳信息

6) rm

慎重!慎重!使用

7) stat

查看文件的详细信息(索引号、大小、权限、时间戳)

8) file

确定文件类型

9) more

f 向下翻屏

b 向上翻屏

= 显示行号、字节位置

10) ps

-ef 显示所有进程的完整列表

UID   启动进程的用户ID

PID   进程ID

PPID  父进程ID

STIME 进程启动时的系统时间

TTY   进程的启动终端

TIME  运行所需的累计CPU时间

CMD   启动程序名称

-l 显示进程的更多信息

F     内核分配的进程标记

S     进程状态

O-在处理上运行

S-睡眠

R-可运行,等待运行

Z-死进程,进程已终止,但父进程不可用

T-进程已停止

PRI   进程优先级(越大越低,20 ~ -20)

NI    判断优先级用

ADDR  进程内存地址

SZ    换出进程需要的交换空间

WCHAN 进程睡眠时所在内核函数的地址

-H 显示进程的层级关系

11) top

第一行: 系统运行时间、登录用户数、系统平均负载(1分钟、5分钟、15分钟) 第二行: 进程总数、(运行、睡眠、停止、僵尸)进程数 第三行: CPU利用率??? 第四行: 物理内存(总、已使用、空闲、缓冲区)容量 第五行: SWAP(总、已使用、空闲、缓冲区)容量

PID: 进程ID USER: 进程所有者 PR: 进程优先级 NI: 进程Nice value VIRT: 进程所用的虚拟内存总量 RES: 进程正在使用的物理内存量 SHR: 与其他进程共享的内存量

S: 进程状态 D-可中断睡眠 R-运行中 S-睡眠 T-已跟踪或已停止 Z-僵死

%CPU: 正在使用的CPU时间份额 %MEM: 正在使用的物理内存份额 TIME+: 已使用的总CPU时间 COMMAND:命令名称