文件编辑器、用户管理,嘎嘎学

这篇具有很好参考价值的文章主要介绍了文件编辑器、用户管理,嘎嘎学。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

打开文件

vim

# 首先你先得下载这个插件
yum install -y vim
vim 文件名
进入编辑模式
i		#在光标所在处进入编辑模式
a		#在当前光标后面进入编辑模式
o		#在光标的下一行进入编辑模式
I		#在光标所在处行首进入编辑模式
A		#在光标所在处行尾进入编辑模式
O		#在光标的上一行进入编辑模式

# 从编辑模式进入命令模式:ESC

命令模式
光标定位键盘:
0 $	        #行首行尾
gg	        #页首--文本顶端
G(shift+g)  #页尾--文本底部
3G           #进入第三行
/string     #查找字符,n下一个,N上一个    (n N 可以循环的)

文本编辑模式
 yy      #复制 
 3yy     #从光标开始复制3行。在最后粘贴
 ygg     #从当前光标复制到页首
 yG      #从光标开始复制到页尾
 dd      #删除一行
 3dd     #从光标开始删除3行
 dgg     #从光标开始删除到页首 
 dG      #从光标开始删除到页尾
 d^      #删除当前光标之前的内容
 p       #粘贴到本行的下一行
大P      #粘贴到本行的上一行
 x       #删除光标所在的字符
 D       #从光标处删除到行尾
 u       #undo撤销
 r       #可以用来修改一个字符

扩展命令模式
shift+:    #进入尾行模式(扩展命令模式)
 :10        #进入第10行 
 :w         #保存 
 :q         #退出 
 :wq        #保存并退出 
 :q!        #不保存并退出 
 :wq! 强制保存退出

进入其他模式
ctrl+v     #进入可视块模式
shift+v    #进入可视行模式

查找替换
语法----> :范围 s/old/new/选项 
:s/world/nice/         #替换当前光标所在行
:3s/sbin/nice/         #替换指定行
:1,5 s/nologin/soso/   #从1-5行的nologin 替换为soso
:%s/bin/soso/          #替换所有行
:%s/sbin/nice/g        #替换行内所有关键字

注释:%表示替换所有行  g表示行内所有关键字

将文件另存(另存为)
语法----> :w 存储到当前文件
:w /tmp/aaa.txt    #另存为/tmp/aaa.txt 
:1,3 w /tmp/2.txt  #从1-3行的内容另存为/tmp/2.txt

设置环境 好吧,我承认这个我也不会用,所以说,要好好学须,这么多东西,还不够让你卷的?
:set nu    #设置行号 
:set list  #显示控制字符
:set nonu  #取消设置行号  

vi命令相对来说没vim好用了

文件基本信息

时间类型

访问时间:atime,查看内容  access
修改时间:mtime,修改内容  modify
改变时间:ctime,文件属性,比如权限,mv改名  change

查询示例

[root@qfedu ~]# ls -l passwd 
-rw-r--r--. 1 root root 839 Oct 31 21:29 passwd

[root@qfedu ~]# stat passwd 
  File: ‘passwd’ # 文件名
  Size: 839 #文件大小,单位是字节 Blocks: 8 # 表示文件占用的磁盘块数量。IO Block: 4096 表示磁盘读写的最小单位,通常为4KB。  regular file
Device: fd00h/64768d	Inode: 33583688    Links: 1  # 表示文件所在的设备号。
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root) # 表示文件的访问权限和时间戳。
Context: unconfined_u:object_r:admin_home_t:s0  # 表示文件的安全上下文。
Access: 2019-10-31 21:29:40.750993492 +0800	# 访问时间
Modify: 2019-10-31 21:29:36.449993550 +0800 # 修改时间
Change: 2019-10-31 21:29:36.452993550 +0800 # 创建时间
 Birth: -
 ls -l 文件名 仅看的是文件的修改时间 

Linux用户管理

用户概览

用户/组的基本概念
Users and groups:

系统上的每个进程(运行的程序)都是作为特定用户运行的

. Every file is owned by a particular user.

每个文件是由一个特定的用户拥有 .

. Access to files and directories are restricted by user.

访问文件和目录受到用户的限制

用户组

groupadd 组名 # 创建一个组
-g:指定新建工作组的id;
-r:创建系统工作组,系统工作组的组ID小于500;
-K:覆盖配置文件“/etc/login.defs”;
-o:允许添加组ID号不唯一的工作组

groupdel 组名  # 删除一个组

groupmod  # 这个暂时还不会用呢
-g<群组识别码>:设置欲使用的群组识别码;
-o:重复使用群组识别码;
-n<新群组名称>:设置欲使用的群组名称。

用户

useradd user01   //创建用户

/etc/passwd  ---->查看账户是否存在的文件
/home/  ---->用户的家目录,每创建一个用户会在/ho\me目录下面创建对应的家目录
/etc/shadow   --->用户的密码文件
/var/mail/    ---->系统邮箱
/etc/group   ---->同名组

useradd 的一些选项
-b, --base-dir BASE_DIR  # 如果未指定 -d HOME_DIR,则系统的默认基本目录。如果未指定此选项,useradd 将使用 /etc/default/useradd 中的 HOME 变量指定的基本目录,或默认使用 /home。
-c, --comment COMMENT    # 加上备注文字。任何文本字符串。它通常是对登录名的简短描述,目前用作用户全名的字段。
-d, --home HOME_DIR      # 将使用 HOME_DIR 作为用户登录目录的值来创建新用户。 
-D, --defaults           # 变更预设值。
-e, --expiredate EXPIRE_DATE # 用户帐户将被禁用的日期。 日期以 YYYY-MM-DD 格式指定。
-f, --inactive INACTIVE      # 密码过期后到帐户被永久禁用的天数。
-g, --gid GROUP   # 用户初始登录组的组名或编号。组名必须存在。组号必须引用已经存在的组。
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]] # 用户也是其成员的补充组列表。每个组用逗号隔开,中间没有空格。
-h, --help # 显示帮助信息并退出。
-k, --skel SKEL_DIR # 骨架目录,其中包含要在用户的主目录中复制的文件和目录,当主目录由 useradd 创建时。
-K, --key KEY=VALUE # 覆盖 /etc/login.defs 默认值(UID_MIN、UID_MAX、UMASK、PASS_MAX_DAYS 等)。
-l, --no-log-init   # 不要将用户添加到 lastlog 和 faillog 数据库。
-m, --create-home   # 如果用户的主目录不存在,则创建它。
-M                  # 不要创建用户的主目录,即使 /etc/login.defs (CREATE_HOME) 中的系统范围设置设置为 yes。
-N, --no-user-group # 不要创建与用户同名的组,而是将用户添加到由 -g 选项或 /etc/default/useradd 中的 GROUP 变量指定的组中。
-o, --non-unique    # 允许创建具有重复(非唯一)UID 的用户帐户。 此选项仅在与 -o 选项结合使用时有效。
-p, --password PASSWORD # crypt(3) 返回的加密密码。 默认是禁用密码。
-r, --system        # 创建一个系统帐户。
-s, --shell SHELL   # 用户登录 shell 的名称。
-u, --uid UID       # 用户 ID 的数值。
-U, --user-group    # 创建一个与用户同名的组,并将用户添加到该组。
-Z, --selinux-user SEUSER # 用户登录的 SELinux 用户。 默认情况下将此字段留空,这会导致系统选择默认的 SELinux 用户。

# 更改默认值
# 当仅使用 -D 选项调用时,useradd 将显示当前默认值。 当使用 -D 和其他选项调用时,useradd 将更新指定选项的默认值。 有效的默认更改选项是:
cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
分隔符::
第一列:用户名
第二列:密码
第三列:用户标识号--->(uid)是一个整数,系统内部用它来标识用户。通常用户标识号的取值范围是0~65535。0是超级用户root的标识号
第四列:gid
第五列:描述信息。
第六列:家目录
第七列:是用户登陆到界面的第一个命令,开启一个shell。登陆shell

查看用户是否存在

1.判断用户是否存在:
id user01   //查看用户的uid、gid、和所在组
uid=1001(user01) gid=1003(user01) groups=1003(user01)
                    主组                    附属组
uid 系统用来识别账户的user identify
gid 系统用来识别组的group identify

2.查看现在所使用的的账户:
whoami 查看我现在所使用的账户
who
w

创建用户

useradd user02 -u 503   #指定uid为503
useradd user05 -s /sbin/nologin  #创建用户并指定shell
useradd user07 -G it,fd  #创建用户,指定附加组  
useradd user10 -u 4000 -s /sbin/nologin

删除用户

userdel -r user02  //删除用户user2,同时删除用户家目录
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件。

用户密码

passwd
-d:删除密码,仅有系统管理者才能使用;
-f:强制执行;
-k:设置只有在密码过期失效后,方能更新;
-l:锁住密码;
-s:列出密码的相关信息,仅有系统管理者才能使用;
-u:解开已上锁的帐号。
用户密码实例操作

如果是普通用户执行passwd只能修改自己的密码。如果新建用户后,要为新用户创建密码,则用passwd用户名,注意要以root用户的权限来创建。

[root@localhost ~]# passwd linuxde     # 更改或创建linuxde用户的密码;
Changing password for user linuxde.
New UNIX password:           # 请输入新密码;
Retype new UNIX password:    # 再输入一次;
passwd: all authentication tokens updated successfully.  # 成功;

普通用户如果想更改自己的密码,直接运行passwd即可,比如当前操作的用户是linuxde。

[linuxde@localhost ~]$ passwd
Changing password for user linuxde.  # 更改linuxde用户的密码;
(current) UNIX password:    # 请输入当前密码;
New UNIX password:          # 请输入新密码;
Retype new UNIX password:   # 确认新密码;
passwd: all authentication tokens updated successfully.  # 更改成功;

比如我们让某个用户不能修改密码,可以用-l选项来锁定:

[root@localhost ~]# passwd -l linuxde     # 锁定用户linuxde不能更改密码;
Locking password for user linuxde.
passwd: Success            # 锁定成功;

[linuxde@localhost ~]# su linuxde    # 通过su切换到linuxde用户;
[linuxde@localhost ~]$ passwd       # linuxde来更改密码;
Changing password for user linuxde.
Changing password for linuxde
(current) UNIX password:           # 输入linuxde的当前密码;
passwd: Authentication token manipulation error      # 失败,不能更改密码;

再来一例:

[root@localhost ~]# passwd -d linuxde   # 清除linuxde用户密码;
Removing password for user linuxde.
passwd: Success                          # 清除成功;

[root@localhost ~]# passwd -S linuxde     # 查询linuxde用户密码状态;
Empty password.                          # 空密码,也就是没有密码;
知识扩展
与用户、组账户信息相关的文件

存放用户信息:

/etc/passwd
/etc/shadow

存放组信息:

/etc/group
/etc/gshadow

用户信息文件分析(每项用:隔开)

例如:jack:X:503:504:::/home/jack/:/bin/bash
jack  # 用户名
X  # 口令、密码
503  # 用户id(0代表root、普通新建用户从500开始)
504  # 所在组
:  # 描述
/home/jack/  # 用户主目录
/bin/bash  # 用户缺省Shell

组信息文件分析

例如:jack:$!$:???:13801:0:99999:7:*:*:
jack  # 组名
$!$  # 被加密的口令
13801  # 创建日期与今天相隔的天数
0  # 口令最短位数
99999  # 用户口令
7  # 到7天时提醒
*  # 禁用天数
*  # 过期天数
用户操作

usermod
用于修改用户的基本信息
补充说明

usermod命令 用于修改用户的基本信息。usermod 命令不允许你改变正在线上的使用者帐号名称。当 usermod 命令用来改变user id,必须确认这名user没在电脑上执行任何程序。

语法

usermod(选项)(参数)

选项

-c<备注>:修改用户帐号的备注文字;
-d<登入目录>:修改用户登入时的目录,只是修改/etc/passwd中用户的家目录配置信息,不会自动创建新的家目录,通常和-m一起使用;
-m<移动用户家目录>:移动用户家目录到新的位置,不能单独使用,一般与-d一起使用。
-e<有效期限>:修改帐号的有效期限;
-f<缓冲天数>:修改在密码过期后多少天即关闭该帐号;
-g<群组>:修改用户所属的群组;
-G<群组>;修改用户所属的附加群组;
-l<帐号名称>:修改用户帐号名称;
-L:锁定用户密码,使密码无效;
-s<shell>:修改用户登入后所使用的shell;
-u<uid>:修改用户ID;
-U:解除密码锁定。

参数

登录名:指定要修改信息的用户登录名。

实例
将 newuser2 添加到组 staff 中:

usermod -G staff newuser2

修改newuser的用户名为newuser1:

usermod -l newuser1 newuser

锁定账号newuser1:

usermod -L newuser1

解除对newuser1的锁定:

usermod -U newuser1

增加用户到用户组中:

usermod -aG group user # 添加用户到用户组中

修改用户家目录:

[root@node-1 ~]# useradd lutixiaya
[root@node-1 ~]# ls /home
lutixiaya
[root@node-1 ~]# usermod -md /data/new_home lutixiaya
[root@node-1 ~]# ls /home/
[root@node-1 ~]# ls /data/
new_home

附加

usermod -aG 添加用户到附属组. 			        usermod -aG 组名 用户名
usermod -g 指定主组.                	        usermod -g 组名/gid  用户名
usermod -G 指定附加组,会覆盖其他的附加组		usermod -G 组名/组好 用户名
组成员管理
1.给组添加账户
-a
[root@qfedu ~]# gpasswd -a user10 grp2
Adding user user10 to group grp2
2.同时添加多个用户到组
-M:members成员的缩写
[root@qfedu ~]# gpasswd -M tom,alice it
3.从组删除用户1
-d
[root@qfedu ~]# gpasswd -d user07 hr
Removing user user07 from group hr

好 白嫖的另外的知识点
gpasswd

Linux下工作组文件的管理工具

补充说明
gpasswd命令 是Linux下工作组文件/etc/group和/etc/gshadow管理工具。

语法

gpasswd(选项)(参数)

选项

-a:添加用户到组;
-d:从组删除用户;
-A:指定管理员;
-M:指定组成员和-A的用途差不多;
-r:删除密码;
-R:限制用户登入组,只有组中的成员才可以用newgrp加入该组。

参数

组:指定要管理的工作组。
实例

如系统有个peter账户,该账户本身不是groupname群组的成员,使用newgrp需要输入密码即可。

gpasswd groupname

让使用者暂时加入成为该组成员,之后peter建立的文件group也会是groupname。所以该方式可以暂时让peter建立文件时使用其他的组,而不是peter本身所在的组。

所以使用gpasswd groupname设定密码,就是让知道该群组密码的人可以暂时切换具备groupname群组功能的。

gpasswd -A peter users

这样peter就是users群组的管理员,就可以执行下面的操作:

gpasswd -a mary users
gpasswd -a allen users

注意:添加用户到某一个组 可以使用usermod -G group_name user_name这个命令可以添加一个用户到指定的组,但是以前添加的组就会清空掉。

所以想要添加一个用户到一个组,同时保留以前添加的组时,请使用gpasswd这个命令来添加操作用户:

gpasswd -a user_name group_name

最后

su 用户名 可以切换用户 
Linux 中查询某个组中所有用户的三种方法
getent group xiao
xiao:x:2000:lin,yaping,li

背诵and理解

理解用户和组的意义

Linux的一大特性:

多用户、多任务。

所谓多用户多任务就是指可以在同一时间,有多个用户登录同一个系统执行不同的任务而互不影响。

假设现在有三个用户:root、lbb、mvv,三个用户同一时间登录了同一个系统,root去修改配置文件了,lbb去创建目录了,mvv去访问数据库了,每个用户互不干扰的独立执行自己的任务,并且每个用户不能够越线去访问其他用户正在操作的目录或执行其他用户下的任务,由此可见,不同的用户是拥有各自不同的权限的,Linux通过权限的划分和管理来实现多用户、多任务的运行机制。

Linux中的用户及其角色划分

账户为分三类:
超级用户(管理员):享有最高权限,具备系统中的所有权限(一般为root),UID为0
系统用户 :别称“伪用户”,无法登录系统,其主要作用是支撑系统运行,方便系统管理。uid号码小于1000.
普通用户:有权限限制,只能对自己目录下的文件进行操作,可以登录系统。uid 大于1000,登陆shell是bin/bash。
任何一个账户在创建的同时都会在系统里面创建一个同名的组。

用户/组基本概念!

Users and groups:
系统上的每个进程(运行的程序)都是作为特定用户运行的
. Every file is owned by a particular user.
每个文件是由一个特定的用户拥有 .
. Access to files and directories are restricted by user.
访问文件和目录受到用户的限制文章来源地址https://www.toymoban.com/news/detail-690985.html

到了这里,关于文件编辑器、用户管理,嘎嘎学的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【eclipse】打开Excel(.xls文件)时 OLE 异常 报错“无法创建内置编辑器 没有为您打开的文件类型注册OLE编辑器”

    错误如下图所示: 1. 导航栏——窗口——首选项 2. 常规——编辑器——文件关联 3. 在文件类型里面找“.xls”格式, 要是没有就新增一个,点击“添加”; 要是有就跳过第4步。 4. 添加上“.xls”类型 4. 选中“.xls”,添加对应的文件编辑器,点击“添加” 5. 选择“外部程序

    2024年02月16日
    浏览(45)
  • 【Linux】软件管理器yum和编辑器vim

    🔥 博客主页 : 小羊失眠啦. 🎥 系列专栏 : 《C语言》 《数据结构》 《C++》 《Linux》 《Cpolar》 ❤️ 感谢大家点赞👍收藏⭐评论✍️ 源代码安装是我们找到软件的源代码,对源代码进行编译,得到软件包,然后进行安装。优点是可以自定软件包,缺点是源代码安装的 操作

    2024年03月10日
    浏览(46)
  • 【linux】2 软件管理器yum和编辑器vim

    目录 1. linux软件包管理器yum 1.1 什么是软件包 1.2 关于rzsz 1.3 注意事项 1.4 查看软件包 1.5 如何安装、卸载软件 1.6 centos 7设置成国内yum源 2. linux开发工具-Linux编辑器-vim使用 2.1 vim的基本概念 2.2 vim的基本操作 2.3 vim正常模式命令集 2.4 vim末行模式命令集 2.5 简单vim配置 ヾ(๑

    2024年02月13日
    浏览(44)
  • 【Linux】软件包管理器 yum | vim编辑器

    前言: 软件包管理器 yum和vim编辑器讲解 yum (Yellowdog Updater, Modified)是一个在基于 RPM(管理软件包的格式和工具集合) 的 Linux 发行版中用于管理软件包的工具,它提供了一种简单而强大的方式来安装、更新和删除软件包,同时也能够自动解决软件包之间的依赖关系。类似于

    2024年02月19日
    浏览(44)
  • 23 WEB漏洞-文件上传之解析漏洞编辑器安全

    各个WEB编辑器安全讲解 https://navisec.it/编辑器漏洞手册/ 各个CMS文件上传简要讲解 wordpress,phpcms, 参考共享的中间件漏洞PDF IIS6/7简要说明-本地搭建 Apache配置安全–vulhub Apache解析漏洞-低版本 利用场景: 如果对方中间件apache属于低版本,我们可以利用文件上传,上传一个不识

    2024年02月11日
    浏览(49)
  • idea中打开多文件编辑器换行展示

    小伙伴们在开发时一定会打开很多的文件,想要来回切换多个指定文件非常不方便,idea默认勾选了在文件在一行展示,如下: 当文件tab展示不完整时,idea的右侧会出现下拉框,让你选择你需要打开/关闭的文件 尽管有这样的设计,对咱们开发的小伙伴来说,仍然很不方便☹

    2024年02月03日
    浏览(70)
  • 基于QT4的GPX文件编辑器开发

    GPX文件是记录地理点的文件,本质是一种xml文件。GPX文件目前没有很好的编辑器,因此作者决定开发一款无需安装的绿色编辑器。 在QT4开发中,XML可以用DOM来实现,但其逻辑并不是很清晰。使用模型视图反而会更加可读。因此在开发中,使用model-view模式来实现数据读写。

    2024年02月12日
    浏览(47)
  • AJAX + PHP 编辑器内容自动备份草稿保存到本地 (适用ueditor百度编辑器或其它) 内容变化后自动触发备份txt文件

    百度自带的自动备份功能enableAutoSave存在问题, 比如第一个文章他自动备份了.等发表第二个文章时,结果把第一个文章的内容自动填充进去了.关键你还不知情!出现过多次这种情况了. 一, 百度原版的 ,具体使用方法,看这里个文章 Ueditor百度编辑器内容自动保存到本地防数据丢失

    2024年02月10日
    浏览(55)
  • day33 文件上传&中间件解析漏洞&编辑器安全

    先判断中间件,是否有解析漏洞,字典扫描拿到上传点,或者会员中心,有可能存在文件上传的地方,而后测试绕过/验证,根据实际情况判断是白名单、黑名单还是内容其他的绕过,绕过/验证和中间件的解析漏洞也不行的话就看看CMS是否存在漏洞,然后看看编辑器漏洞有无

    2024年02月05日
    浏览(62)
  • IDE /Qt Creator 文本编辑器之文件编码设置

    在 Qt Creator 工具 - 选项 - 文本编辑器 - 行为选项卡中,存在一个叫作 “文件编码” 的配置项。其默认配置如下, 我是栽了不少坑之后,才理解到它的用途和作用方式的。这是一个有用的配置项,尤其是在使用 Qt Creator + MSVC 组成的集成开发环境时。我是在整理 《IDE/warning:

    2024年02月13日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包