Linux基础知识学习

发布时间:2023年12月29日

开发工具:Xshell7+VMware

首先要明确的是在Linux系统中“目录”==文件夹

而所谓"家目录"指的是每个用户所拥有的一个目录,通常默认在?/home?目录下,其名称与用户的用户名相同。

~代表的是就就是家目录 cd ~就可以直接进入当前用户下的家目录

此时所在路径是/home

?

?当然这个是最快进入的方法,也有其他可以进入的方法,例如:

从根目录进入家目录

所谓"根目录"就是整个文件系统的顶级目录,它是文件系统的起点。根目录是Linux文件系统的根节点,它包含了整个文件系统的所有文件和目录。从根目录开始,可以通过不同的路径访问文件系统中的其他目录和文件。

根目录->/home->/用户名的家目录

/home:包含用户的家目录,每个用户都有一个独立的子目录

此处也是达到了和上述直接用"cd ~"一样得效果。

pwd指令是显示当前位置是在哪个目录下

清屏操作:ctrl+i或者clear

Linux是一个多用户的操作系统

Linux之下的管理员,称为root用户。也就是计算机常说的超级管理员

第一次可以通过sudo passwd root的方式来为root用户添加密码。

此处用的是普通用户的身份为超级管理员添加密码,至于为什么有权限能够为超级管理员谁知相关参数,则是因为sudo这个明亮,对该命令进行权限升级,使普通用户的命令强度暂时上升到超级用户权限。因为超级用户可以做任何事情,太危险了。故在一般情况下,使用的就是普通用户。


?$与#的区别:

$表示当前的用户是普通用户

#表示当前的用户是超级管理员用户

这里切换身份用到了su命令,使用su命令后会提示你输入密码,此处的密码就是你要切换用户的用户密码。

添加新用户

此处可以分成两种情况

带家里目录的用户和不带家目录的用户

1.不带家目录的用户:

此处这里是不显示的。此处 "sudo useradd test2"的意思是给huajixiang用户暂时的超级权限,以新建一个test2用户。此时的test2用户实际上是属于"三无用户",箭头所指是没有家目录的,我们可以通过"cat /etc/passwd"命令,来查看test2是否存在

此时可以查看用户的信息在这个文件夹中,cat /etc/passwd指令的含义就是通常在Linux系统中,用户的关键信息被存放在系统的/etc/passwd文件中,系统的每一个合法用户账户对应于该文件中的每一行记录。这行记录定义了每个用户账号的属性。?

可用"sudo userdel test2"命令来删除

可以看到此时是没有test2的信息了。

2.带家目录的添加用户

使用"sudo useradd -m test2 -s? /bin/bash"?

Linux 系统中以超级用户权限(通过?sudo)运行?useradd?命令,创建一个名为?test2?的用户,并为该用户创建一个家目录。此外,该命令还将?test2?用户的默认 shell 设置为?/bin/bash,这意味着用户登录后将使用 Bash shell。

可以看到这里是有家目录的?

还需要为test2用户设置密码,以便于后期需要切换用户

?可以看到此时是为test2用户设置了密码,并且已经切换到了test2用户的身份。

删除用户

需要退出当前用户并且使用"sudo userdel -r test2"

删除带家目录的用户,必须要加上选项 -r

可以看到home目录下的test的家目录已经被删除了

文件类型

d目录(文件夹),目录也是文件,称为目录文件

而d后面的 rwx为一组,共有三组,表示三组权限,分别对应当前用户-组用户-其他用户

r代表read 表示可读权限?

w代表write 表示可写权限

x代表execute 表示可执行权限

权限可以用数字来赋予。如?

权限rwx? ? ?rwxrwx
二进制111110110
766

可使用 "chmod 777 dir2"

?777就是三种权限全都赋予

可以设置700为文件夹赋予只有拥有者才能进入,进行读写的权限。

例如这里用huajixiang为dir1改变权限,切换用户test2来进入该文件夹

可以看到此时是没有读的权限的

此时切换回huajiixiang角色,使用"chmod 777 dir1"重新赋予用户全部权限,使用test2角色就可以读取该目录下的权限了

?创建文件

1.使用touch命令创建空文件

2.使用echo命令创建新文件

3.使用vim命令创建新文件

4.使用cat命令创建新文件

?1.使用touch命令创建空文件

2.使用echo命令创建新文件

cat?是一个用于连接、显示文件内容的命令。使用?cat?命令后跟文件名,可以将指定文件的内容输出到终端。如上,使用?cat 文件名?命令可以将文件的内容打印到终端窗口上。

2.1"echo>内容 文件名"是先创建响应文件,再将内容写入相应的文件中,但重复写的话会覆盖原有的内容。其原理是在写入已经存在的文件时,它会先清空原文件的内容,再写入。">"是重定向符号,其利用了管道pipe技术。

2.2"echo>>内容 文件名"是以追加方式写入文件末尾

可以看到这里是打印2.txt里面的文件内容只有hello这个内容

而用了echo >> world 2.txt?(在原有的hello内容基础上追加world内容)

并且echo >>这个命令是自带\n也就是所谓换行的,也可以不换行进行追加
使用echo -n >> nihao 2.txt

这就实现了无换行操作。

3.使用vim创建新文件

使用vim 文件名 即可进入该文件对文件进行操作,按i或者insert键进入文件编辑模式

刚开始使用vim 3.txt的界面

按i或者insert键可插入内容

可以看到左下角已经变成了插入的字样

这里输入hello world nihao的内容

提示:可以按ESC键退出编辑模式,此时可以连按两下g快速跳转到文件首,可以看到上述我的光标是在o的位置,这里我按了两下g,此时已跳转到h的位置

此时按大写G可以跳转到最后一行

此时想要保存内容并推退出,可以使用":wq"命令

按冒号,进入到底栏模式(命令行模式)

:wq回车,退出vim编辑器

此时再利用cat命令打印3.txt的内容

???????

4.使用cat命令创建新文件

使用cat命令加上重定向符号,新建文件,结束输入时,按ctrl+d结束输入

打印了一下可以看到这个命令是没有换行符的

查看文件的内容

1.cat 文件名 把文件中的所有内容逐步输入到控制台(终端)

2.使用vim查看

3.more less 逐步查看文件的内容

4.head 文件名 查看文件的开始N行

5.tail 文件名 查看文件的末尾N行

文章来源:https://blog.csdn.net/weixin_44143600/article/details/135279039
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。