Linux文件操作与用户管理
1.绝对路径与相对路径
绝对路径:路径的写法一定由根目录 ‘/’写起,例如 /usr/local/mysql 这就是绝对路径。
相对路径:路径的写法不是由根目录 ‘/’写起,例如,首先用户进入到/, 然后再进入到home ,命令为 cd /home 然后 cd test 此时用户所在的路径为 /home/test 第一个cd命令后跟 ‘/home’ 第二个cd命令后跟 ‘test’, 并没有斜杠,这个 ‘test’ 是相对于 ‘/home’ 目录来讲的,所以叫做相对路径。
2.cat
查看一个文件的内容并显示在屏幕上
-n:查看文件时,把行号也显示在屏幕上
3.head/tail
分别写出文件的头几行或尾几行,使用tail查看文件更新
使用head,查看testFile2的前5行
使用tail,查看testFile2的后6行
4.more/less
分页显示文件内容,more只能下翻,less可以上下翻
more命令一次只显示一页内容,可以向后翻页
5.文件重定向
将/home/testFile的前5行,写入home/路径下的testfile3中
将/home/testFile的后7行,写入文件testfile3,不能覆盖之前的内容,需要使用>>进行追加
6.批量建立文件
touch system_change-machine{1..10}-month_{jan,feb,mar}.txt
7.批量建立文件夹
mkdir -p /home/syschanges/{jan,feb,mar}
mkdir -p自动建立多层目录,比如mkdir -p /home/1/2/3,会把三个目录都建立
{jan,feb,mar},建立平行的子目录,而不是多层次目录
8.批量移动文件
9.批量删除
rm -f /home/student/system_change-machine/*/system_change-machine{9,10}*.txt
中间的星号代表任何文件夹,这里有jan,feb,mar三个文件夹
{9,10}代表文件名machine后面有9或10的文件
-f代表强制删除,不询问yes或no
10.vim编辑器
vim是vi的升级版。来vi 和vim最大的区别就是编辑一个文本时,vi不会显示颜色,而vim会显示颜色。显示颜色更易于用户进行编辑。其他功能没有什么区别。
vim的三种模式:一般模式、编辑模式、命令模式。
- 一般模式: 当vim filename 编辑一个文件时,一进入该文件就是一般模式了。在这个模式下,可以做的操作有,上下移动光标;删除某个字符;删除某行;复制、粘贴一行或者多行。
- 编辑模式:一般模式下,是不可以修改某一个字符的,只能到编辑模式了。从一般模式进入编辑模式,只需按一个键即可(i, I, a, A, o, O, r, R)。当进入编辑模式时,会在屏幕的最下一行出现“INSERT或REPLACE”的字样。从编辑模式回到一般模式只需要按一下键盘左上方的ESC键即可。
- 命令模式:在一般模式下,输入 ”:” 或者 “/” 即可进入命令模式。在该模式下,可以搜索某个字符或者字符串,也可以保存、替换、退出、显示行号等等。
ls -al > /home/student/vimfile.txt
ctrl + q选中 x 删除
11.创建用户--/etc/passwd
cat -n /etc/passwd | head
(1)用户名,代表用户账号的字符串
(2)密码占用符:用x代替/etc/shadow
(3)用户账号ID:也叫做uid,系统识别用户身份就是通过这个数字,0就是root,可以修改test用户的uid为0,uid的取值范围为0-66535,0是超级用户(root)的标识号,1-499由系统保留,作为管理账号,普通用户表示从500开始,如果我们自定义一个普通用户,你会看到该账户的标识是大于或等同于500
(4)组账号ID:也叫做gid,这个字段对应着etc/group中的一条记录,其实/etc/group/和/etc/passwd基本类似
(5)用户说明:例如姓名、电话、地址等等,
(6)宿主目录:root的宿主目录是/root,普通用户的家宿主目录为/home/username,这个字段可以自定义
(7)shell:用户登录后启动的一个进程,用来将用户下达的指令传给内核,这就是shell
12.用户创建--etc/shadow/
(1)用户名:跟etc/passwd对应
(2)用户密码:账号的真正密码,密码已经加密过
(3)上次更改密码的日期,这个数字是这样计算得来的,距离1970年1月1日到上次更改密码的日期,例如上次更改密码的日期为2012年1月1日,则这个值就是 ‘365 x (2012-1970) + (2012-1970)/4 + 1 = 15341’. 因为如果是闰年,则有366天
(4)要过多少天才可以更改密码,默认是0,即不限制。
(5)密码多少天后到期。即在多少天内必须更改密码,例如这里设置成30,则30天内必须更改一次密码,否则将不能登录系统,默认是99999,可以理解为永远不需要改。
(6)密码到期前的警告期限,若这个值设置成7,则表示当7天后密码过期时,系统就发出警告告诉用户,提醒用户他的密码将在7天后到期。
(7)账号失效期限。您可以这样理解,如果设置这个值为3,则表示:密码已经到期,然而用户并没有在到期前修改密码,那么再过3天,则这个账号就失效了,即锁定了。
(8)账号的生命周期,跟第三段一样,是按距离1970年1月1日多少天算的。它表示的含义是,账号在这个日期前可以使用,到期后账号作废。
(9)作为保留用的,没有什么意义。
13.新增/删除用户和用户组
groupadd:新增一个用户组
-g:可以自定义gid创建组
2.删除组
14.增加账户
useradd
-u[UID] :自定义UID
-g:使其属于已存在的某个组
-d:自定义用户的宿主目录
-M:不建立宿主目录
-s:自定义shll