一、 用户配置文件和密码配置文件

1、用户配置文件

[root@aming01 ~]# ls /etc/passwd
/etc/passwd
[root@aming01 ~]# cat !$
cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1000:1000::/home/user1:/bin/bash

我们不需要显示那么多的话,可以执行下列命令

如果想在一行输入两条命令,中间可以用分号隔开

[root@aming01 ~]# head -2 /etc/passwd;tail -3 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1000:1000::/home/user1:/bin/bash

我们来看每个字段都是什么含义,例如

root:x:0:0:root:/root:/bin/bash

第1个字段是用户名(第1行的root就是用户名);

第2个字段中都是x,存放的是用户的密码;

第3个字段是一个数字,表示uid;

第4个字段也是一个数字,表示gid;

第5个字段为注释信息,没有实质意义;

第6个字段是用户的家目录,root的家目录是/root,普通用户的家目录是/home/user3;

最后一个字段是用户的shell,/bin/bash表示可以登录,/sbin/nologin表示不能登录。

2、密码配置文件

[root@aming01 ~]# head -2 /etc/shadow;tail -3 /etc/shadow
root:$6$o/4DUs/2$oF/dyzUGno1Rm6.9u/u1cZlqingy6rPEgFJEIc6YuSBcxueVI4.J.Fat6XmeMnwA3NNYwJqNQVe/zFANF9QnH.:17660:0:99999:7:::
bin:*:17110:0:99999:7:::
postfix:!!:17645::::::
sshd:!!:17645::::::
user1:!!:17665:0:99999:7:::

第1个字段为用户名;

第2字段为用户密码,该密码是加密的;

第3个字段为上次更改密码的日期(从1970-1-1开始计算);

第4个字段为要过多少天可以更改密码,默认为0;

第5个字段为密码多少天后必须更改,默认为99999,即不需更改;

第6个字段为密码到期前的警告期限;

第7个字段为账号失效期限;

第8个字段为账号的生命周期;最后一个字段作为保留用的,无实际意义。

二、用户组管理

1、新增用户组的命令:groupadd 组名

[root@aming01 ~]# groupadd nihao
[root@aming01 ~]# tail -3  /etc/group
sshd:x:74:
user1:x:1000:
nihao:x:1001:

-g选项:可以定义gid,CentOS7默认从1000开始,CentOS默认从500开始

[root@aming01 ~]# groupadd -g 1005 nihao
[root@aming01 ~]# tail -3  /etc/group
sshd:x:74:
user1:x:1000:
nihao:x:1005:

2、删除组的命令:groupdel 组名

[root@aming01 ~]# tail -3  /etc/group
sshd:x:74:
user1:x:1000:
nihao:x:1005:
[root@aming01 ~]# groupdel nihao
[root@aming01 ~]# tail -3  /etc/group
postfix:x:89:
sshd:x:74:
user1:x:1000:

在删除组的时候,有一种情况不能删除,在我们要删除的组里有用户的时候,我们要先删除用户才能删除这个组

[root@aming01 ~]# groupdel nihao
groupdel:不能移除用户“user2”的主组
[root@aming01 ~]# userdel user2
[root@aming01 ~]# groupdel nihao
[root@aming01 ~]# tail -3  /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1000:1000::/home/user1:/bin/bash
[root@aming01 ~]# groupdel nihao
groupdel:“nihao”组不存在

三、用户管理

1、增加用户命令:useradd 用户名 (命令adduser也能创建用户,跟useradd一样)

-u:表示自定义uid;

[root@aming01 ~]# useradd -u 1005 user2
[root@aming01 ~]# tail -3  /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1000:1000::/home/user1:/bin/bash
user2:x:1005:1005::/home/user2:/bin/bash

-g:表示指定所属组;

[root@aming01 ~]# tail -3  /etc/group
sshd:x:74:
user1:x:1000:
nihao:x:1001:
[root@aming01 ~]# useradd -u 1004 -g nihao user3
[root@aming01 ~]# tail -3  /etc/passwd
user1:x:1000:1000::/home/user1:/bin/bash
user2:x:1001:1001::/home/user2:/bin/bash
user3:x:1004:1001::/home/user3:/bin/bash

-d:表示自定义用户的家目录;

-s:表示自定义shell;

-M:表示不建立家目录,虽然能在/etc/passwd文件能看到,但如果你用ls /hone/user7查看,会提示该目录不存在,所以 -M 的作用就是不创建那个目录

[root@aming01 ~]# useradd -M user3
正在创建信箱文件: 文件已存在
[root@aming01 ~]# ^C
[root@aming01 ~]# rm -rf /var/spool/mail/user3                 #删除信箱文件
[root@aming01 ~]# useradd -M user3
useradd:用户“user3”已存在
[root@aming01 ~]# rm -rf /var/spool/mail/user3                 #删除信箱文件
[root@aming01 ~]# userdel user3
[root@aming01 ~]# useradd -M user3
[root@aming01 ~]# tail -3 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1000:1000::/home/user1:/bin/bash
user3:x:1001:1001::/home/user3:/bin/bash
[root@aming01 ~]# ls /home/user3                     
[root@aming01 ~]# ls /home/
user1  user2  user3

2、删除用户命令:userdel 用户名

加-r选项:删除用户时,连同用户的家目录也删除
[root@aming01 ~]# useradd user4
[root@aming01 ~]# ls /home/
user1  user2  user3  user4
[root@aming01 ~]# userdel user3
[root@aming01 ~]# ls /home/
user1  user2  user3  user4
[root@aming01 ~]# userdel -r user4
[root@aming01 ~]# ls /home/
user1  user2  user3

四、usermod命令

usermod是更改用户属性的:usermod 用户名

-u: 更改用户的uid;

[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1000:1000::/home/user1:/bin/bash
[root@aming01 ~]# usermod -u 1001 user1
[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1000::/home/user1:/bin/bash

-g: 更改用户的gid或组名;该gid必须存在,才能使用

[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1000::/home/user1:/bin/bash              #uid为1001,gid为1000

[root@aming01 ~]# groupadd -g 1005 grp1
[root@aming01 ~]# tail -3 /etc/group
sshd:x:74:
user1:x:1000:
grp1:x:1005:
[root@aming01 ~]# usermod -g 1005 user1
[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/user1:/bin/bash

-d: 更改用户的家目录;

[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/user1:/bin/bash
[root@aming01 ~]# usermod -d /home/qwe user1
[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/qwe:/bin/bash

-s: 更改用户的shell;

[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/qwe:/bin/bash
[root@aming01 ~]# usermod -s /sbin/nologin user1
[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/qwe:/sbin/nologin

-G:添加扩展组;把用户追加到某些组里,可以追加到多个组中,每个组之间用“,”隔开

[root@aming01 ~]# id user1
uid=1001(user1) gid=1005(grp1) 组=1005(grp1)
[root@aming01 ~]# tail -3 /etc/passwd
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/qwe:/sbin/nologin
[root@aming01 ~]# usermod -G grp2,grp3 user1
[root@aming01 ~]# id user1
uid=1001(user1) gid=1005(grp1) 组=1005(grp1),1006(grp2),1007(grp3)

-L: 锁定用户密码(被锁定的密码前面会有个感叹号  ! );passwd -L username
[root@aming01 ~]# usermod -L user1
[root@aming01 ~]# tail -2 /etc/shadow
sshd:!!:17645::::::
user1:!$6$8lSPJbls$4wi.wif.Zr5E36uQEtiZaxhUvl7/reDZLYe6E4mJVxKV.nA2p/jub951uncu4elTDsH4Y.YnR4l/YKlTiOYpH0:17670:0:99999:7:::

-U: 解锁用户密码;passwd -U username      (感叹号消失)

[root@aming01 ~]# tail -2 /etc/shadow
sshd:!!:17645::::::
user1:!$6$8lSPJbls$4wi.wif.Zr5E36uQEtiZaxhUvl7/reDZLYe6E4mJVxKV.nA2p/jub951uncu4elTDsH4Y.YnR4l/YKlTiOYpH0:17670:0:99999:7:::
[root@aming01 ~]# usermod -U user1
[root@aming01 ~]# tail -2 /etc/shadow
sshd:!!:17645::::::
user1:$6$8lSPJbls$4wi.wif.Zr5E36uQEtiZaxhUvl7/reDZLYe6E4mJVxKV.nA2p/jub951uncu4elTDsH4Y.YnR4l/YKlTiOYpH0:17670:0:99999:7:::

-l :修改用户的登录名称

[root@aming01 ~]# tail -2 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
user1:x:1001:1005::/home/qwe:/bin/bash
[root@aming01 ~]# usermod -l hhh user1
[root@aming01 ~]# tail -2 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
hhh:x:1001:1005::/home/qwe:/bin/bash

五、用户密码管理

1、更改用户密码:passwd 用户名

如果用户密码为*,表示密码锁定,不能登录(锁定密码可以用passwd -L,解锁用passwd -U,用法与usermod一样)

2、给用户设置密码更改掉的命令:passwd --stdin 用户名

可以在更改密码时,不用二次确认

常在脚本用的方法:echo "12345678" |passwd --stdin 用户名

六、mkpasswd命令

命令mkpasswd的作用是随机生成密码,Linux中默认没有这个命令,需要安装

执行命令:yum install -y expect

[root@aming01 ~]# yum install -y expect
已加载插件:fastestmirror
base                                                                                           | 3.6 kB  00:00:00     
extras                                                                                         | 3.4 kB  00:00:00     
updates                                                                                        | 3.4 kB  00:00:00     
updates/7/x86_64/primary_db    FAILED                                          
http://mirrors.shu.edu.cn/centos/7.5.1804/updates/x86_64/repodata/49393589ab8a009b0ba01a63645404ff021ec1321a45aa289ff6a16cae46e662-primary.sqlite.bz2: [Errno 14] curl#7 - "Failed connect to mirrors.shu.edu.cn:80; Connection refused"
正在尝试其它镜像。

-l:生成指定长度的密码;

[root@aming01 ~]# mkpasswd -l 10
ywebh6MB5{

-s:指定密码中有几个特殊字符;

[root@aming01 ~]# mkpasswd -l 10 -s 3
*gt]F57<rX

-d:指定生成数字的个数

[root@aming01 ~]# mkpasswd -l 10 -d 5
i64a9;75EV

-c :指定生成小写字母的个数

[root@aming01 ~]# mkpasswd -l 10 -c 5
UTs-y6hr3r

-C:指定生成大写字母的个数

[root@aming01 ~]# mkpasswd -l 10 -C 5
S1D'6ZauIZ

七、su命令

1、su命令是用于切换用户的:su 用户名

如果加上-选项,即:su - 用户名,表示彻底切换用户,包括自己的配置、环境变量

[root@aming01 ~]# useradd su1
[root@aming01 ~]# su su1
[su1@aming01 root]$ pwd
/root
[su1@aming01 root]$ su
密码:
[root@aming01 ~]# pwd
/root
[root@aming01 ~]# su - su1
上一次登录:日 5月 20 21:42:43 CST 2018pts/0 上
[su1@aming01 ~]$ pwd
/home/su1

2、假如我们创建用户时没有创建用户的家目录,当我们切换到这个用户的时候,就会显示错误,使用以下方法解决:

[root@aming01 ~]# su hhh
bash-4.2$ 

[root@aming01 ~]# groupadd hhh
[root@aming01 ~]# mkdir /home/hhh
mkdir: 无法创建目录"/home/hhh": 文件已存在
[root@aming01 ~]# chown hhh:hhh /home/hhh
[root@aming01 ~]# ls -la /etc/skel/
总用量 24
drwxr-xr-x.  2 root root   62 4月  24 23:32 .
drwxr-xr-x. 74 root root 8192 5月  20 21:53 ..
-rw-r--r--.  1 root root   18 8月   3 2017 .bash_logout
-rw-r--r--.  1 root root  193 8月   3 2017 .bash_profile
-rw-r--r--.  1 root root  231 8月   3 2017 .bashrc
[root@aming01 ~]# cp /etc/skel/.bash* /home/hhh
[root@aming01 ~]# chown -R hhh:hhh /home/hhh

3、我们登不上这个普通用户,也可以普通用户的身份执行命令

[root@aming01 ~]# su - -c "touch /tmp/sss" hhh
[root@aming01 ~]# ls -l /tmp
总用量 116
lrwxrwxrwx. 1 root root      7 5月  16 06:09 hhh1.log -> yum.log
-rw-r--r--. 1 root root      0 5月  16 06:07 hhh.log
-rwxr-xr-x. 1 root root 117656 5月  14 05:40 ls2
-rw-r--r--. 1 hhh  grp1      0 5月  20 21:59 sss

八、sudo命令

1、sudo命令是授权普通用户拥有别的用户的权限,大部分时候是授权普通用户拥有root用户的权限

使用这个命令,先要编辑配置文件,etc/sudoers,但编辑这个文件出错后系统不会报错,所以我们用visudo来编辑,系统就会提示我们哪里有错误

[root@aming01 ~]# visudo

执行visudo命令后,找到:

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

在这行下面添加,表示user1用户可以在所有终端上以root权限运行所有命令

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

user1   ALL=(ALL)    ALL

2、还可以添加命令,编辑完user1就有root的ls,cd,cat权限,需要输入用户的密码,但是这里要注意使用绝对路径并且用空格隔开

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

user1  ALL=(ALL)       /usr/bin/ls, /usr/bin/cd, /usr/bin/cat

小扩展,使用:set nu 可以查看行数

    89 ## The COMMANDS section may have other options added to it.
     90 ##
     91 ## Allow root to run any commands anywhere
     92 root    ALL=(ALL)       ALL
     93 
     94 ## Allows members of the 'sys' group to run networking, software,
     95 ## service management apps and more.
     96 # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
     97 
:set nu

3、在visudo,如果想不需要输入密码,就加NOPASSWD:

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

user1  ALL=(ALL)       NOPASSWD: /usr/bin/ls, /usr/bin/cd, /usr/bin/cat

4、在visudo,可以给命令做别名,用USER_CMD代替ls,cd,cat命令

     26 ## Networking
     27 # Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient, /usr/bin/net, /sbin/iptables        , /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, /sbin/mii-tool
     28 Cmnd_Alias USER_CMD= /usr/binls, /usr/bin/cd, /usr/bin/cat
     29 ## Installation and management of software
     30 # Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum

九、限制root远程登录

1、使用root用户登录服务器有一定的危险,为安全起见,我们应该禁止root远程登录,只允许普通用户登录

编辑/etc/ssh/sshd_config配置文件,找到:

[root@aming01 ~]# vi /etc/ssh/sshd_config

# Authentication:

#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

将PermitRootLogin yes改成PermitRootLogin no,然后重启sshd服务

[root@aming01 ~]# systemctl restart sshd.service

2、限制root远程登录

修改配置文件/etc/ssh/sshd_config

[root@aming01 ~]# vi /etc/ssh/sshd_config

找到:

# Authentication:

#LoginGraceTime 2m
#PermitRootLogin yes
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10

将#PermitRootLogin yes修改为PermitRootLogin no,保存文件,重启sshd服务

[root@aming01 ~]# systemctl restart sshd.service

转载于:https://my.oschina.net/u/3851153/blog/1815287

2018-5-18笔记相关推荐

  1. 2018.8.8笔记

    2018.8.8笔记 void print(int a[2], int n){//OK,数组退化为指针 } void print(int a[0], int n){//错 } 数据类型的本质:固定内存 ...

  2. 2018.8.14笔记

    2018.8.14笔记 setsiblingindex(idx)设置兄弟结点先后顺序时,若idx处已有结点X,则结点X及其后的所有节点后移 gc alloc,就是申请堆内存,堆内存申请无处不在,不可能 ...

  3. 学习手记(2018/7/14~2018/7/18)——快乐纪中

    2018/7/14:普通的纪中一天 儿子兄弟表示法 将一颗多叉树转换为二叉树的方法,左子节点连原树的第一个儿子,右子节点连原树的右边的兄弟 适用范围:树形dp 数位dp常见方法 状态压缩 分类讨论 记 ...

  4. 训练日志 2018.10.18

    花了一周时间把之前学过的算法和题重新看了一下,重新架构了一下知识体系,对 DP 和搜索有了更深刻的认识,这周正式开始图论内容,抽空再将搜索的优化和 A* 算法学习一下 2018.10.18

  5. 暑期训练日志----2018.8.18

    训练第20天. 上午整理了一下区间DP的知识点和例题,中午补了补线性DP,做了做洛谷上的题,抽时间系统化的整理一下线性DP 家里有事要回济南,两天时间基本废掉了...不知道还能不能在假期结束前看完DP ...

  6. 2018.03.18 临汾市游记

    2018.03.18 临汾市游记 写在前面 首先,Capella 极其擅长记流水账,包括本文. 其次,本文中所有并列关系的人名,均按字典序排列. 背景 临汾一中 Mr_Wolfram 和 poorpo ...

  7. 首发! 2018年1-8月手机行业发展白皮书,附59页完整PDF

    首发 |2018年1-8月手机行业发展白皮书  数据周期: 2018年1-8月 数据来源: 友盟+全域数据.凯度消费者指数 涉及品牌: 苹果/华为/荣耀/OPPO/vivo/360/一加/锤子/魅族等 ...

  8. 2018.8.18日,直播笔记

    正则 什么是正则 grep gerp/egrep正则示例 sed awk 拓展 正则 什么是正则 egrep是grep的扩展,grep有的功能egrep都有 ​​​​​ grep 过滤指定关键词 语法 ...

  9. 2018.7.18学习笔记

    burp实现弱密码破解 1.先打开你的burpsuit,浏览器设置为代理服务器(代理:127.0.0.1,端口:8080) 2.在网上随意找到一个网站,随意输入账号和密码,点击登录 3.burp抓包成 ...

  10. 《麻省理工科技评论》:2018年18大科技趋势,2017年7大失败技术

    来源:科技周 摘要:2018 年伊始,许多科技大势仍在继续,正如比尔·盖茨所说,"大多数人高估了某种技术的短期价值,低估了其长期价值."同样,大多数的年度预测会高估了一年内一些事件 ...

最新文章

  1. iptables的地址取反操作
  2. 剑指offer 从头到尾打印链表
  3. 《算法竞赛进阶指南》 0x50 动态规划
  4. STM32单片机低功耗配置
  5. git新建分支并且在切换分支开发
  6. VC++获取文本框1内容在文本框2显示
  7. Kneron用“重组”方案精简深度学习算法,芯片产品明年开售
  8. 20145324 《Java程序设计》第1周学习总结
  9. H264--1--编码原理以及I帧B帧P帧
  10. 论文公式编号右对齐_毕业论文的封面格式要求有哪些?
  11. python画名侦探柯南_基于flask的可视化动漫分析网站【python入门必学】
  12. zk集群和clickhouse集群搭建
  13. 洛谷 P5708 【深基2.习2】三角形面积
  14. 【CloudShell】阿里云壳EDR卸载指南
  15. 计算机图形学笔记十:Geometry3(网格处理)
  16. 小工具开发笔记—IE自动填表器—第一篇:你好,世界
  17. 两段视频如何无缝拼接?如何将两个视频拼接在一起
  18. oracle报错——字符集不匹配
  19. web渗透测试----28、ARP欺骗
  20. 动词、名词、形容词还有什么词

热门文章

  1. 第1次任务:购物车程序的面向对象设计
  2. 爱奇艺黄金VIP会员怎么免费领取升级星钻VIP会员在电视上看奇异果TV?
  3. java中流转pdf_Java中的PDX到PDF转换器
  4. string.h头文件里的函数源代码及调用(尝试编写)
  5. 各种操作系统支持的磁盘格式对比
  6. Android接电话流程、Phone来电过程、phone上层来电话解析 接通电话
  7. 编译原理第三版课后答案
  8. Arcgis计算坡度问题
  9. js总结(11) 语法字典 各种小应用
  10. Oracle TO_DATE 日期格式