您的位置:首页 > 运维架构 > Linux

常用快捷键、用户管理和文件权限——linux笔记(2)

2017-03-04 22:58 621 查看
一一些常用快捷键

二Shell 常用通配符

三who命令

四用户管理
susu- 与 sudo

用户组
如何查看自己属于哪些用户组
方法一使用groups命令

方法二查看etcgroup文件

将其他用户加入sudo用户组

删除用户

五文件权限

一、一些常用快捷键

按键作用
tab
补全命令
Ctrl+d
键盘输入结束或退出终端
Ctrl+s
暂停当前程序,暂停后按下任意键恢复运行
Ctrl+z
将当前程序放到后台运行,恢复到前台为命令fg
Ctrl+a
将光标移至输入行头,相当于Home键
Ctrl+e
将光标移至输入行末,相当于End键
Ctrl+k
删除从光标所在位置到行末
Alt+Backspace
向前删除一个单词
Shift+PgUp
将终端显示向上滚动
Shift+PgDn
将终端显示向下滚动

二、Shell 常用通配符

比如通配符
*
就可以这样用,效果就是打印出当前目录下所有txt后缀的文件。

$ ls *.txt

一切其他Shell常用通配符:

字符含义
*
匹配 0 或多个字符
?
匹配任意一个字符
[list]
匹配 list 中的任意单一字符
[!list]
匹配 除list 中的任意单一字符以外的字符
[c1-c2]
匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z]
{string1,string2,...}
匹配 string1 或 string2 (或更多)其一字符串
{c1..c2}
匹配 c1-c2 中全部字符 如{1..10}

三、
who
命令

$ who am i

或者

$ who mom likes

参数说明
-a
打印能打印的全部
-d
打印死掉的进程
-m
am i,mom likes
(=。=!)
-q
打印当前登录用户数及用户名
-u
打印当前登录用户登录信息
-r
打印运行等级

四、用户管理

su,su- 与 sudo

su <user>
可以切换到用户user,执行时需要输入目标用户的密码,
sudo <cmd>
可以以特权级别运行cmd命令,需要当前用户属于sudo组,且需要输入当前用户密码。
su - <user>
命令也是切换用户,同时环境变量也会跟着改变成目标用户的环境变量。

现在我们新建一个叫 hadoop123 的用户:

$ sudo adduser hadoop123


这个命令不但可以添加用户到系统,同时也会默认为新用户创建 home 目录:

$ ls /home


然后可以通过下面的命令切换过去。

$ su -l hadoop123


用户组

在 Linux 里面如何知道自己属于哪些用户组呢?

如何查看自己属于哪些用户组

方法一:使用groups命令

$ groups shiyanlou

shiyanlou:~/ $ groups hadoop123 [21:58:26]

hadoop123 : hadoop123

以下摘自实验楼:

其中冒号之前表示用户,后面表示该用户所属的用户组。这里可以看到 shiyanlou 用户属于 shiyanlou 用户组,每次新建用户如果不指定用户组的话,默认会自动创建一个与用户名相同的用户组(差不多就相当于家长的意思,或者说是老总)。默认情况下在sudo用户组里的可以使用sudo命令获得root权限。shiyanlou 用户也可以使用 sudo 命令,为什么这里没有显示在 sudo 用户组里呢?可以查看下
/etc/sudoers.d/shiyanlou
文件,我们在
/etc/sudoers.d
目录下创建了这个文件,从而给 shiyanlou 用户赋予了 sudo 权限:

如下图



方法二:查看
/etc/group
文件

$ cat /etc/group | sort

/etc/group
的内容包括用户组(Group)、用户组口令、GID 及该用户组所包含的用户(User),每个用户组一条记录。格式如下:

group_name:password:GID:user_list

你看到上面的 password 字段为一个 ‘x’ 并不是说密码就是它,只是表示密码不可见而已。

将其他用户加入sudo用户组

在root权限下执行以下命令,可以

$ sudo usermod -G sudo hadoop123

删除用户

$ sudo deluser hadoop123–remove-home

五、文件权限

在用命令:
ls -l
时会列出本目录下面所有文件(不包括隐藏文件)的相关权限,和一些详细信息

文件类型和权限分别是第一个字母和另外九个字母

文件类型:

d : 目录

l : 软连接

b :块设备

c :字符设备

s :socket

p 管道

- :普通文件

文件权限这里实验楼有特殊的说明 原文如下:

读权限,表示你可以使用
cat <file name>


之类的命令来读取某个文件的内容;写权限,表示你可以编辑和修改某个文件; 执行权限,通常指可以运行的二进制程序文件或者脚本文件,如同 Windows 上的 ‘exe’ 后缀的文件,不过 Linux 上不是通过文件后缀名来区分文件的类型。你需要注意的一点是,一个目录同时具有读权限和执行权限才可以打开并查看内部文件,而一个目录要有写权限才允许在其中创建其它文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息

至于修改文件所有者和修改文件权限可以分别用

chown

chmod

这两个命令来实现,具体的可以用
man
命令来查看具体语法。

本文主要结合之前的认知和实验楼的实验文档来写的笔记,所以内容虽然很基础但是也是比较重要,重新总结一遍也有利于更好地掌握linux操作系统,之后也会尽快完善此笔记。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell linux