Linux常用命令2:
一、系统常用命令
- 显示指定的文件(目录)已使用的磁盘空间 du
● -h 显示单位
● -s 显示总的大小
du -s -h
- 显示当前内存和交换空间的使用情况 free
free
3.显示网络状态信息,查看端口占用情况 netstat
● -a 显示所有连接和监听端口
● -t (tcp)仅显示tcp相关选项
● -u (udp)仅显示udp相关选项
● -n 拒绝显示别名,能显示数字的全部转化成数字。
● -p 显示建立相关链接的程序名
#sudo:得的管理员权限执行命令
sudo yum install net-tools -y
netstat -tunpl
- 网卡网络配置详解 ifconfig
- 测试网络的连通性 ping
- 显示当前系统中耗费资源最多的进程 (实时) top
- 显示瞬间的进程状态(快照) ps
● -e /-A 显示所有进程,环境变量
● -f 全格式
● -a 显示所有用户的所有进程(包括其它用户)
● -u 按用户名和启动时间的顺序来显示进程
● -x 显示无控制终端的进程
ps -aux
#管道 命令1 | 命令2 把命令1的结果给命令2作为参数
cat OAuth2Config.java | grep class
ps -aux | grep tail
- 根据进程ID(pid)杀死进程 kill
kill -9 端口
二、压缩和打包命令
- 把文件和目录压缩成gz格式 gzip
gzip OAuth2Config.java #压缩
gzip -d OAuth2Config.java.gz #解压
- 以bzip2格式压缩和解压 bzip2
bzip2 OAuth2Config.java
bzip2 OAuth2Config.java.bz2 -d
- tar
● 打包目录成tar文件
● 整合gzip和bzip2压缩
● -c 建立一个压缩文件的参数指令(create)
● -x 解开一个压缩文件的参数指令(extract)
● -z 是否需要用 gzip 压缩
● -j 是否需要用 bzip2 压缩
● -v 压缩的过程中显示文件(verbose)
● -f 使用档名,在 f 之后要立即接档名(file)
(1)打包
#打包java-project目录
tar -cvf java-project.tar ./java-project/
#删除java-project
rm -rf java-project
tar -xvf java-project.tar
(2)以gzip方式压缩
tar -czvf java-project.tar.gz ./java-project #z表示已gz格式压缩
tar -zxvf java-project.tar.gz #解压
(3)以biz2方式压缩和解压
#压缩
tar -cjvf java-project.tar.bzip2 ./java-project
#解压
tar -xjvf java-project.tar.bzip2
三、vim命令
vi / vim是Unix / Linux上最常用的文本编辑器而且功能非常强大。
-
vim的模式
-
底行命令
● :wq保存退出
● :q! 不保存退出
● :q 退出,如果内容有改变不能退出
● :set number 显示行号
● :set nonumber 隐藏行号
● :w filename 另存为文件
● :e!撤销所有操作
● :行号:调到指定的行 -
移动命令
● w b 下一个,上一个单词
● 0, $ 行首,行尾
● gg 第一行
● G 最后一行
● xG到x行 -
替换命令
● :1,$ s/private/public/g 将第一行到追后一行的private替换为public
● :1,$ s/public/protected/c 将第一行到追后一行的public替换为protected(有提示) -
编辑命令
● x删除一个字符
● dd 删除一行
● yy复制一行
● p粘贴
● 输入v进入选择模式,选择内容,输入y复制,调到要黏贴的位置输入p粘贴
● 输入u 撤销操作
● 在一般模式中输入/8080查找8080,输入n查找下一个
● 在一般模式输入r+替换的字符,执行替换
四、用户管理
-
用户管理的配置文件
● 保存用户信息的文件:/etc/passwd
● 保存密码的文件:/etc/shadow
● 保存用户组的文件:/etc/group
● 保存用户组密码的文件:/etc/gshadow
● 用户配置文件:/etc/default/useradd -
/etc/passwd格式
用户的分类
● 超级用户:(root,UID=0)
● 普通用户:(UID在1000以上)
● 伪用户:(UID在1到999)
○ 系统和服务相关的:bin、daemon、shutdown等
○ 进程相关的:mail、news、games等
○ 伪用户不能登陆系统,而且没有宿主目录 -
/etc/shadow格式
-
用户的组
● 每个用户至少属于一个用户组
● 如果创建用户,没有指定组,此用户指定跟用户名同名组
● 每个用户组可以包含多个用户
● 同一个用户组的用户享有该组共有的权限
-
用户和组管理命令
(1) 用户管理命令
● useradd:添加用户
○ -u 指定组ID(uid)
○ -g 指定所属的组名(gid)
○ -G 指定多个组,用逗号“,”分开(Groups)
○ -c 用户描述(comment)
○ -e 失效时间(expire date)
● usermod:修改用户
○ -l 修改用户名 (login)usermod -l a b(b改为a)
○ -g 添加组 usermod -g sys tom-G添加多个组 usermod
○ -G sys,root tom–L 锁定用户账号密码(Lock)
○ –U 解锁用户账号(Unlock)
● userdel:删除用户
○ -r 删除账号时同时删除目录(remove)
(2) 组管理的命令
● 添加组:groupadd
○ -g 指定gid
● 修改组:groupmod
○ -n 更改组名(new group)
● 删除组:groupdel
● groups 显示用户所属组
五、权限管理
-
权限表示符号
● 第1位:文件类型(d 目录,- 普通文件,l 链接文件)
● 第2-4位:所属用户权限,用u(user)
● 表示第5-7位:所属组权限,用g(group)表示
● 第8-10位:其他用户权限,用o(other)表示第
● 2-10位:表示所有的权限,用a(all)表示 -
三种基本权限
● r 读权限(read)4
● w 写权限(write)2
● x 执行权限 (execute)1 -
chmod命令
chmod修改文件权限命令(change mode)
● 参数:-R 下面的文件和子目录做相同权限操作(Recursive递归的)
● 两种方式
○ 例如:chmod u+x a.txt,给a.txt增加当前用户的执行权限
○ 用数字来表示权限(r=4,w=2,x=1,-=0) 例如:chmod 750 b.txt :表示b.txt的权限当前用户是rwx,当前用户的组rx,其他用户没有权限 -
chown
改变文件所属用户,文件所属的组
● -R:递归
比如:
chown root:users OAuth2Config.java
#使用jack查看OAuth2Config文件,因为jack属于users,所以可以查看
cat OAuth2Config.java