Linux权限用户以及文本处理的一些相关命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux权限用户以及文本处理的一些相关命令相关的知识,希望对你有一定的参考价值。

1.权限的相关命令:
通过 ls -l,我们可以查看文件的权限。
例如:技术图片
rwxr-xr-x。 其中分为三组,rwx r-x r-x。
第一组是属主的权限,第二组是属组的权限,第三组是其他用户的权限。
属主:user(u);属组:group(g);其他用户:other(o)。
r:是可读权限。 w: 是可写权限。 x: 是可执行权限。 -就代表没有这个权限。
如上图所示:test1这个文件属主的权限是可读可写可执行,属组和其他用户都只是可读可写,不 能执行。
当然,我们可以通过一些命令,给用户修改权限。
①chmod:change mode 修改权限
chmod a+x 文件名 ;a也就是all,这个命令就是给所有用户都加上可执行权限。
chmod u+x 文件名 ;u上面也说了,也就是属主(user)。就是给属主加上可执行权限。
chmod g+w 文件名 ;g也就是属组(group)。这个命令就是给属组加上可写权限。
chmod o+r 文件名 ;o就是其他用户(other)。这个命令就是给其他用户加上可读权限。
也就是说,chmod 用户+指定权限 文件名。 就是给某个用户加上指定权限。
同理,如果想要给某个用户去掉指定权限,就把+改成-就可以了。
比如:chmod u-x 文件名;就是把属主的可执行权限去掉。
我们也可以用十进制的数字代替用户名和权限,来修改权限。
例:rwxr-xr-x,rwx r-x r-x
这个转换为二进制的话就是:111 101 101,相对应的十进制就是7 5 5。
所以,chmod 777 文件名;执行这个命令后,这个文件就到了最高权限,rwxrwxrwx。
一般新创建的目录默认拥有的权限是755,也就是rwxr-xr-x。
新创建的普通文本文件,是默认没有执行权限的,默认拥有的权限是644,也就是rw-r--r--。
2.用户的相关命令:
通过根目录下的etc目录里面的passwd,我们可以知道用户的相关信息。
那么我们应该如何新建用户呢。
②useradd:新建用户。
useradd -m 用户名 ; 这就是新建用户的命令,这样新建出来的话,是自动创建家目录的。
-d 目录名称; 这样就可以指定一个家目录了。
-s shell名称; 这样可以指定登陆后分配的shell。
-g 用户组名; 这样是指定分配的用户组,主要组,如果不加的话,默认组名是用户名称
-G 附加组; 给新建用户分配附加组,也就是次要组。
-u uid; 给新建用户一个指定的用户id,默认的用户id是从1000往后排。
我们现在知道了如何新建用户,那么想要删除一个用户,应该如何做呢。
③userdel: 删除用户。userdel -f;强制删除,就算这个用户在线,也会被删除。
-r;连着用户的家目录一起删除,如果不加这个参数,删除用户之后,家目录还是会存在。
现在我们知道了用户的新建与删除,用户组的创建与删除的命令又是什么呢。
④groupadd: 添加用户组。
groupadd 用户组名; 就可以创建一个你自己命名的用户组啦。
-g:gid,组id; 也就是给用户组一个指定id。
⑤groupdel:删除用户组。
groupdel 用户组名; 就可以把指定用户组删掉了,当这个用户组里还有用户的时候,是删不掉的。
3.文本的相关处理:
⑥比较文件:
diff 文件1 文件2; 这样可以比较出文件1和文件2两个文件中,不同的行号中不同的内容,会用><两个符号来表示。
例如:<123; 就表示文件1比文件2多出来了123。

456; 就表示文件2比文件1多出来了456。
也就是说, < 表示第一个文件中多出来的内容 ;
表示第二个文件中多出来的内容。
comm 文件1 文件2; 这样比较出来,会有三排结果。
第一排:是只存在文件1的内容;
第二排:是只存在文件2的内容;
第三排:是两个文件相同的内容。
⑦sort :排序。
sort 文件名; 默认不比较数字大小,从左到右按字母序,数字序比较。
-n 按数字大小排序
-o 输出比较结果。例如:sort -n 文件1 -o 文件2 。就是说把文件1按数字大小排序后输出到文件2。
-r 逆序显示。
如果文件内不止一列,我们想要按第二列排序应该怎么做呢。
sort -t‘:‘ -k2 -n 文件1;这个的意思就是以:为分隔,按文件1内的第二列排序,按数字大小来排
-t 指定分隔符,分隔符用’‘这两个符号括起来。
-k 按照指定列数来比较。
⑧uniq:去重。 默认相邻的才能去重。与sort合用。
例如:cat test | sort | uniq;就是把test排序后,把重复的去掉,然后输出到终端。
⑨cat -s test: 压缩空行,就是把test里面多余的空行去掉,只剩一个。
tac:以相反的顺序输出,与cat一样,只是输出方式不同。
⑩wc:统计。 字符数,单词数,行数。
-l: 统计行数。
-w: 统计单词数。
-c: 统计字符数。
例如:wc -l test; 就是说统计一下test里面的行数。
比较常见的:ls -l | wc -l:就是查看当前内容详细信息,并统计行数。

以上是关于Linux权限用户以及文本处理的一些相关命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux 文本处理命令 - chmod

Linux 文本处理命令 - chmod

Linux学习汇总——Linux用户组管理,文件权限管理,文本处理工具grep及egrep

Linux文本处理三剑客之grep及正则表达式

Linux 文本处理命令 - less

Linux 文本处理命令 - less