查进程
ps 命令查找与进程相关的 PID 号:
ps a 显示现行终端机下的所有程序, 包括其他用户的程序.
ps -A 显示所有程序.
ps c 列出程序时, 显示每个程序真正的指令名称, 而不包含路径, 参数或常驻服务的标示.
ps -e 此参数的效果和指定 "A" 参数相同.
ps e 列出程序时, 显示每个程序所使用的环境变量.
ps f 用 ASCII 字符显示树状结构, 表达程序间的相互关系.
ps -H 显示树状结构, 表示程序间的相互关系.
ps -N 显示所有的程序, 除了执行 ps 指令终端机下的程序之外.
ps s 采用程序信号的格式显示程序状况.
ps S 列出程序时, 包括已中断的子程序资料.
ps -t < 终端机编号> 指定终端机编号, 并列出属于该终端机的程序的状况.
ps u 以用户为主的格式来显示程序状况.
ps x 显示所有程序, 不以终端机来区分.
常用的方法是 ps aux, 然后再通过管道使用 grep 命令过滤查找特定的进程, 然后再对特定的进程进行操作.
ps aux | grep program_filter_word,ps -ef |grep tomcat
ps -ef|grep java|grep -v grep 显示出所有的 java 进程, 去处掉当前的 grep 进程.
杀进程
使用 kill 命令结束进程: kill xxx
常用: kill -9 324
Linux 下还提供了一个 killall 命令, 可以直接使用进程的名字而不是进程标识号, 例如:# killall -9 NAME
进入到进程的执行文件所在的路径下, 执行文件 ./ 文件名
附:
更改档案拥有者
命令 : chown [-cfhvR] [-help] [-version] user[:group] file...
功能 : 更改文件或者文件夹的拥有者
参数格式 :
user : 新的档案拥有者的使用者 IDgroup : 新的档案拥有者的使用者群体(group)
-c : 若该档案拥有者确实已经更改, 才显示其更改动作
-f : 若该档案拥有者无法被更改也不要显示错误讯息
-h : 只对于连结 (link) 进行变更, 而非该 link 真正指向的档案
-v : 显示拥有者变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)
例如: chown -R oracle:oinstall /oracle/u01/App/oracle
更改目录拥有者为 oracle
修改权限
命令: chmod (change mode)
功能: 改变文件的读写和执行权限. 有符号法和八进制数字法.
选项:(1)符号法:
命令格式: chmod {u|g|o|a}{+|-|=}{r|w|x} filename
u (user) 表示用户本人.
g (group) 表示同组用户.
o (oher) 表示其他用户.
a (all) 表示所有用户.
+ 用于给予指定用户的许可权限.
- 用于取消指定用户的许可权限.
= 将所许可的权限赋给文件.
r (read) 读许可, 表示可以拷贝该文件或目录的内容.
w (write) 写许可, 表示可以修改该文件或目录的内容.
x (execute)执行许可, 表示可以执行该文件或进入目录.
(2)八进制数字法:
命令格式: chmod abc file
其中 a,b,c 各为一个八进制数字, 分别表示 User,Group, 及 Other 的权限.
4 (100) 表示可读.
2 (010) 表示可写.
1 (001) 表示可执行.
若要 rwx 属性则 4+2+1=7;
若要 rw - 属性则 4+2=6;
若要 r-x 属性则 4+1=5.
例如:# chmod a+rx filename
让所有用户可以读和执行文件 filename.
# chmod go-rx filename
取消同组和其他用户的读和执行文件 filename 的权限.
# chmod 741 filename
让本人可读写执行, 同组用户可读, 其他用户可执行文件 filename.
# chmod -R 755 /home/oracle
递归更改目录权限, 本人可读写执行, 同组用户可读可执行, 其他用户可读可执行
修改文件日期
命令: touch
格式: touch filenae
功能: 改变文件的日期, 不对文件的内容做改动, 若文件不存在则建立新文件.
例如:% touch file
链接文件
命令: ln (link)
格式:
- ln [option] filename linkname
- ln [option] directory pathname
功能: 为文件或目录建立一个链. 其中, filename 和 directory 是源文件名和
源目录名; linkname 和 pathname 分别表示与源文件或源目录名相链接的
文件或目录.
选项:-s 为文件或目录建立符号链接. 不加 - s 表示为文件或目录建立硬链接
注释: 链接的目地在于, 对一个文件或目录赋予两个以上的名字, 使其可以出
现在不同的目录中, 既可以使文件或目录共享, 又可以节省磁盘空间.
例如:% ln -s filename linkname
显示日期
命令: date
例如:% date
显示日历
命令: cal (calendar)
格式: cal [month] year
功能: 显示某年内指定的日历
例如:% cal 1998
显示文件头部
命令: head
格式: head [option] filename
功能: 显示文件的头部
选项: 缺省 显示文件的头 10 行.
-i 显示文件的开始 i 行.
例如:% head filename
显示文件尾部
命令: tail
格式: tail [option] filename
功能: 显示文件的尾部
选项: 缺省 显示文件的末 10 行.
-i 显示文件最后 i 行.
+i 从文件的第 i 行开始显示.
例如:% tail filename
显示用户标识
命令: id
格式: id [option] [user]
功能: 显示用户标识及用户所属的所有组.
选项:-a 显示用户名, 用户标识及用户所属的所有组
注释:
例如:% id username
查看当前登录的用户
命令: users
显示都谁登录到机器上
命令: who
格式: who
功能: 显示当前正在系统中的所有用户名字, 使用终端设备号, 注册时间.
例如:% who
显示当前终端上的用户名
命令: whoami
格式: whoami
功能: 显示出当前终端上使用的用户.
例如:% whoami
寻找文件
命令: find
格式: find pathname [option] expression
功能: 在所给的路经名下寻找符合表达式相匹配的文件.
选项:
-name 表示文件名
-user 用户名, 选取该用户所属的文件
-size 按大小查找, 以 block 为单位, 一个 block 是 512B
-mtime n 按最后一次修改时间查找, 选取 n 天内被修改的文件
-perm 按权限查找
-type 按文件类型查找
-atime 按最后一次访问时间查找
例如:% find ./ -name '*abc*' -print
搜索文件中匹配符
命令: grep
格式: grep [option] pattern filenames
功能: 逐行搜索所指定的文件或标准输入, 并显示匹配模式的每一行.
选项:-i 匹配时忽略大小写
-v 找出模式失配的行
例如:% grep -i 'java*' ./test/run.sh
统计文件字数
命令: wc [option] filename
功能: 统计文件中的文件行数, 字数和字符数.
选项:-l 统计文件的行数
-w 统计文件的单词数
-c 统计文件的字符数
注释: 若缺省文件名则指标准输入
例如:% wc -c ./test/run.sh
显示磁盘空间
命令: df (disk free)
格式: df [option]
功能: 显示磁盘空间的使用情况, 包括文件系统安装的目录名, 块设备名, 总
字节数, 已用字节数, 剩余字节数占用百分比.
选项:
-a: 显示全部的档案系统和各分割区的磁盘使用情形
-i: 显示 i -nodes 的使用量
-k: 大小用 k 来表示 (默认值)
-t: 显示某一个档案系统的所有分割区磁盘使用量
-x: 显示不是某一个档案系统的所有分割区磁盘使用量
-T: 显示每个分割区所属的档案系统名称
-h: 表示使用「Human-readable」的输出, 也就是在档案系统大小使用 GB,MB 等易读的格式.
注释:
例如:% df -hi
查询档案或目录的磁盘使用空间
命令: du (disk usage)
格式: du [option] [filename]
功能: 以指定的目录下的子目录为单位, 显示每个目录内所有档案所占用的磁盘空间大小
选项:
-a: 显示全部目录和其次目录下的每个档案所占的磁盘空间
-b: 大小用 bytes 来表示 (默认值为 k bytes)
-c: 最后再加上总计 (默认值)
-s: 只显示各档案大小的总合
-x: 只计算同属同一个档案系统的档案
-L: 计算所有的档案大小
-h: 表示档案系统大小使用 GB,MB 等易读的格式.
例如:% du -a
% du -sh /etc 只显示该目录的总合
% du /etc | sort -nr | more 统计结果用 sort 指令进行排序,
sort 的参数 -nr 表示要以数字排序法进行反向排序.
显示进程
命令: ps
格式: ps [option]
功能: 显示系统中进程的信息. 包括进程 ID, 控制进程终端, 执行时间和命令.
选项:
-a 显示所有进程信息
-U uidlist 列出这个用户的所有进程
-e 显示当前运行的每一个进程信息
-f 显示一个完整的列表
-x 显示包括没有终端控制的进程状况 .
注释:
例如:% ps -ef
% ps -aux 然后再利用一个管道符号导向到 grep 去查找特定的进程, 然后再对特定的进程进行操作.
终止进程
命令: kill
格式: kill [option] pid
功能: 向指定的进程送信号或终止进程. kill 指令的用途是送一个 signal 给某一个 process,
因为大部份送的都是用来杀掉 process 的 SIGKILL 或 SIGHUP , 因此称为 kill
选项:-9 强行终止进程
注释: pid 标示进程号, 可由 ps 命令得到.
例如:% kill -9 pid
你也可以用 kill -l 来察看可代替 signal 号码的数目字. kill 的详细情形请参阅 man kill.
查看自己的 IP 地址
命令: ifconfig
格式: ifconfig -a
查看路由表
命令: netstat
格式: netstat -rn
远程登录
命令: telnet
格式: telnet hostname
文件传输
命令: ftp (file transfer program)
格式: ftp hostname
功能: 网络文件传输及远程操作.
选项:
ftp 命令:
` cd [dirname]` 进入远程机的目录
`lcd [dirname]` 设置本地机的目录
` dir/ls ` 显示远程的目录文件
` bin ` 以二进制方式进行传输
asc 以文本文件方式进行传输
get/mget 从远程机取一个或多个文件
put/mput 向远程机送一个或多个文件
prompt 打开或关闭多个文件传送时的交互提示
close 关闭与远程机的连接
quit 退出 ftp
!/exit ftp 登陆状态下,! 表示暂时退出 ftp 状态回到本地目录, exit 表示返回 ftp 状态
注释:
例如:% ftp hostname
查看自己的电子邮件
命令: mailx
格式: mailx
选项:
delete 删除
next 下一个
quit 退出
reply 回复
回忆命令
命令: history
格式: history
功能: 帮助用户回忆执行过的命令.
例如:% history
网上对话
命令: talk
格式: talk username
功能: 在网上与另一用户进行对话.
选项:
注释: 对话时系统把终端分为上下两部分, 上半部显示自己键入信息, 下半部
显示对方用户键入的信息. 键入 delete 或 Ctrl+C 则结束对话.
例如:% talk username
允许或拒绝接受信息
命令: mesg (message)
格式: mesg [n/y]
功能: 允许或拒绝其它用户向自己所用的终端发送信息.
选项:
n 拒绝其它用户向自己所用的终端写信息
y 允许其它用户向自己所用的终端写信息(缺省值)
注释:
例如:% mesg n
给其他用户写信息
命令: write
格式: write username [ttyname]
功能: 给其他用户的终端写信息.
选项:
注释: 若对方没有拒绝, 两用户可进行交谈, 键入 EOF 或 Ctrl+C 则结束对话.
例如: write username
创建, 修改, 删除用户和群组
a. 创建群组:
例如: groupadd oinstall 创建群组名为 oinstall 的组
groupadd -g 344 dba
创建组号是 344 的组, 此时在 / etc/passwd 文件中产生一个组 ID(GID)是 344 的项目.
b. 修改群组:
groupmod: 该命令用于改变用户组帐号的属性
groupmod -g 新的 GID 用户组帐号名
groupmod -n 新组名 原组名: 此命令由于改变用户组的名称
c. 删除群组:
groupdel 组名: 该命令用于删除指定的组帐号
d. 新建用户:
命令: useradd [-d home] [-s shell] [-c comment] [-m [-k template]]
[-f inactive] [-e expire ] [-p passwd] [-r] name
主要参数
-c: 加上备注文字, 备注文字保存在 passwd 的备注栏中.
-d: 指定用户登入时的启始目录.
-D: 变更预设值.
-e: 指定账号的有效期限, 缺省表示永久有效.
-f: 指定在密码过期后多少天即关闭该账号.
-g: 指定用户所属的群组.
-G: 指定用户所属的附加群组.
-m: 自动建立用户的登入目录.
-M: 不要自动建立用户的登入目录.
-n: 取消建立以用户名称为名的群组.
-r: 建立系统账号.
-s: 指定用户登入后所使用的 shell.
-u: 指定用户 ID 号.
举例: # useradd -g oinstall -G dba oracle 创建 Oracle 用户
e. 删除用户
命令: userdel 用户名
删除指定的用户帐号
userdel -r 用户名(userdel 用户名; rm 用户名): 删除指定的用户帐号及宿主目录
例:#useradd -g root kkk // 把 kkk 用户加入 root 组里
f. 修改用户
命令: usermod
修改已有用户的信息
usermod -l 旧用户名 新用户名: 修改用户名
usermod -L 用户名: 用于锁定指定用户账号, 使其不能登陆系统
usermod -U 用户名: 对锁定的用户帐号进行解锁
passwd -d 用户名: 使帐号无口令, 即用户不需要口令就能登录系统
例:#usermod -l user2 user1 // 把用户 user2 改名为 user1
启动, 关闭防火墙
永久打开或则关闭
- chkconfig iptables on
- chkconfig iptables off
即时生效: 重启后还原
- service iptables start
- service iptables stop
或者:
- /etc/init.d/iptables start
- /etc/init.d/iptables stop
启动 VSFTP 服务
即时启动: /etc/init.d/vsftpd start
即时停止: /etc/init.d/vsftpd stop
开机默认 VSFTP 服务自动启动:
方法一:(常用 \ 方便)
- [root@localhost etc]# chkconfig -list|grep vsftpd ( 查看情况)
- vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
- [root@localhost etc]# chkconfig vsftpd on (执行 ON 设置)
方法二:
修改文件 /etc/rc.local , 把行 / usr/local/sbin/vsftpd & 插入文件中, 以实现开机自动启动
vi 技巧
a. 进入输入模式
新增 (append)
a : 从光标所在位置後面开始新增资料, 光标後的资料随新增资料向後移动.
A: 从光标所在列最後面的地方开始新增资料.
插入 (insert)
i: 从光标所在位置前面开始插入资料, 光标後的资料随新增资料向後移动.
I : 从光标所在列的第一个非空白字元前面开始插入资料.
开始 (open)
o : 在光标所在列下新增一列并进入输入模式.
O: 在光标所在列上方新增一列并进入输入模式.
b. 退出 vi
在指令模式下键入: q,:q!,:wq 或: x(注意: 号), 就会退出 vi. 其中: wq 和: x 是存盘退出, 而: q 是直接退出, 如果文件
已有新的变化, vi 会提示你保存文件而: q 命令也会失效, 这时你可以用: w 命令保存文件后再用: q 退出, 或用: wq 或: x 命
令退出, 如果你不想保存改变后的文件, 你就需要用: q! 命令, 这个命令将不保存文件而直接退出 vi.
c. 删除与修改文件的命令:
x: 删除光标所在字符.
dd : 删除光标所在的列.
r : 修改光标所在字元, r 後接著要修正的字符.
R: 进入取替换状态, 新增文字会覆盖原先文字, 直到按 [ESC] 回到指令模式下为止.
s: 删除光标所在字元, 并进入输入模式.
S: 删除光标所在的列, 并进入输入模式.
d. 屏幕翻滚类命令
Ctrl+u: 向文件首翻半屏
Ctrl+d: 向文件尾翻半屏
Ctrl+f: 向文件尾翻一屏
Ctrl+b: 向文件首翻一屏
nz: 将第 n 行滚至屏幕顶部, 不指定 n 时将当前行滚至屏幕顶部.
e. 删除命令
ndw 或 ndW: 删除光标处开始及其后的 n-1 个字
do: 删至行首
d$: 删至行尾
ndd: 删除当前行及其后 n-1 行
x 或 X: 删除一个字符, x 删除光标后的, 而 X 删除光标前的
Ctrl+u: 删除输入方式下所输入的文本
f. 搜索及替换命令
/pattern: 从光标开始处向文件尾搜索 pattern
?pattern: 从光标开始处向文件首搜索 pattern
n: 在同一方向重复上一次搜索命令
N: 在反方向上重复上一次搜索命令
:s/p1/p2/g: 将当前行中所有 p1 均用 p2 替代
:n1,n2s/p1/p2/g: 将第 n1 至 n2 行中所有 p1 均用 p2 替代
:g/p1/s//p2/g: 将文件中所有 p1 均用 p2 替换
g. 复制, 黏贴
(1) 选定文本块, 使用 v 进入可视模式; 移动光标键选定内容
(2) 复制选定块到缓冲区, 用 y; 复制整行, 用 yy
(3) 剪切选定块到缓冲区, 用 d; 剪切整行用 dd
(4) 粘贴缓冲区中的内容, 用 p
h. 其他
在同一编辑窗打开第二个文件, 用: sp [filename]
在多个编辑文件之间切换, 用 Ctrl+w
来源: http://www.jianshu.com/p/3d632c218771