梅科尔工作室-OpenEuler培训第二讲笔记

发布于:2023-01-20 ⋅ 阅读:(587) ⋅ 点赞:(0)

目录

前言

1.问题1

2.问题2

3.问题3

4.问题4

 5.问题5

进入vi

​编辑

 退出vi

 6.问题6

 7.问题7

 总结


前言

本文主要记录梅科尔工作室培训OpenEuler第二讲的学习笔记,主要是一些Linux命令的实现。


1.问题1

使用什么命令查看 ip 地址及接口信息?

在Linux系统里查看ip地址及接口信息的命令如下,在终端输入即可

ifcofig

实现效果如图

2.问题2

cp和mv命令有什么区别?用什么指令将文件file1和file2文件合成一个文件?

cp命令用法如下

cp命令用于复制文件或者目录,可以一次复制单个文件,也可以一次复制多个文件(cp 命令属于高危命令,使用不慎就会有丢失数据的危险)。

语法:cp [OPTION]… SOURCE… DIRECTORY

-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。

-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。

-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。

-l:不复制文件,只是生成硬链接文件。

-s:把目标文件建立为源文件的软链接文件,而不是复制源文件。

cp 命令既可以复制文件,也可以复制目录。

mv命令用法如下

mv命令用于移动文件或者目录(高危命令,使用不慎就会有丢失数据的危险)。

如果原文件和目标文件在同一个父目录里面,则mv命令的效果就相当于给文件改名。

语法:mv [选项] 源文件或目录目标文件或目录。

-b :若需覆盖文件,则覆盖前先行备份。

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖。

-u :若目标文件已经存在,且 source 比较新,才会更新(update)。

 可以看出看出,cp命令和mv命令的区别在于cp命令用于复制文件或者目录,mv命令用于移动文件或者目录,类似于复制和剪切。

使用cat命令可以将file1和file2文件合成一个文件

touch file1.txt file2.txt 创建两个文件
cat file1.txt file2.txt > file.txt 合并文件

 效果如下:

3.问题3

当前目录下创建子目录test3,并进入该目录,分别创建目录project和文件 test3,并将文件test3搬移到project子目录,更名为myproject

效果展示如下

4.问题4

下图中o表示目录,□表示文件,*为当前目录位置,将文件m.c复制到XM目录下,并改名为ex.c,分别使用绝对路径和相对路径执行指令。

Linux 中的绝对路径和相对路径


绝对路径始终从根目录 (/) 开始,例如,/home/abhishek/scripts/my_scripts.sh。

相对路径从当前目录开始,例如,如果您在 /home 目录中并且想要访问该my_scripts.sh文件,则可以使用abhishek/scripts/my_scripts.sh。

 用相对路径实现,效果如下: 

用绝对路径实现,效果如下:

 5.问题5

进入和退出vi的方法有哪些?输入什么指令,可进入vi编辑器,且目录光标位于文件的第10行。

vi是标准的Unix文本编辑器,也是最古老的文本编辑器、最通用的文本编辑器。所有的Linux、Unix都默认带有vi文本编辑器。虽然vi的操作方式与其他常用的文本编辑器 (如gedit)很不相同 ,但是由于其运行于字符界面,并可用于所有unix/linux环境, 仍被经常使用。

vi的三种命令模式:

Command:命令模式,用于输入命令;

Insert:插入模式,用于插入文本;

Visual:可视模式,用于浏览文本。

优点:通用,几乎所有的Unix、Linux都自带vi。

缺点:功能简单,显示效果单一。

进入vi

在终端提示符后键入vi和想要编辑(或建立)的文件名,便可进入vi。

例如:

vi example.c

进入vi之后,首先进入的就是命令模式,也就是说等待命令输入而不是文本输入。

这时输入的字母都将作为命令来解释。光标停在屏幕第一行首位上,其余各行行首均有一个“~”符号,表示该行为空行。最后一行也称状态行,显示出当前正在编辑的文件名以及其状态。

 退出vi

当编辑完文件,准备退出Vi返回到shell时,可以使用以下几种方法之一。
  
  在命令模式中,连按两次大写字母Z,若当前编辑的文件曾被修改过,则Vi保存该文件后退出,返回到shell;若当前编辑的文件没被修改过,则Vi直接退出, 返回到shell。
  
  在末行模式下,输入命令
  
  :w
  
  Vi保存当前编辑文件,但并不退出,而是继续等待用户输入命令。在使用w命令时,可以再给编辑文件起一个新的文件名。
  
 例如:
  :w newfile
  
  此时Vi将把当前文件的内容保存到指定的newfile中,而原有文件保持不变。若newfile是一个已存在的文件,则Vi在显示窗口的状态行给出提示信息:
  
  File exists (use ! to override)
  
  此时,若用户真的希望用文件的当前内容替换newfile中原有内容,可使用命令
  
   w! newfile
  
  否则可选择另外的文件名来保存当前文件。
  
  在末行模式下,输入命令
  
  :q
  
  退出Vi返回到shell。若在用此命令退出Vi时,编辑文件没有被保存,则Vi在显示窗口的最末行显示如下信息:
  
  No write since last change (use ! to overrides)
  
  提示用户该文件被修改后没有保存,然后Vi并不退出,继续等待用户命令。若用户就是不想保存被修改后的文件而要强行退出Vi时,可使用命令
  
  :q!
  
  Vi放弃所作修改而直接退到shell下。
  
  在末行模式下,输入命令
  
  :wq
  
  Vi将先保存文件,然后退出Vi返回到shell。
  
  在末行模式下,输入命令
  
  :x
  
  该命令的功能同命令模式下的ZZ命令功能相同。

光标处于文件中特定的某行上,可在Vi后加上任选项+n,其中n为指定的行数。

 vi +10 example.c

 6.问题6

在当前目录下创建software用户组,在该组下创建user101和user102用户, 它们的密码分别是OpenEuler0808和MakerStudio0808,然后将user101用户的用户组改为handware,注意handware组需要新创建。

创建用户组

groupadd [选项] 用户组
选项:
-g GID 指定新用户组的组标识号,一般来说是唯一的,除非与-o一起使用(用户组在Linux都会有一个数字类型的值作为标识)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

用户和密码的创建效果如下:

修改用户的用户组操作方法:

 usermod -g 用户组 用户名
强行设置某个用户所在组
usermod -G 用户组 用户名
把某个用户改为 group(s)
usermod -a -G 用户组 用户名
把用户添加进入某个组(s)

附usermod使用说明:
功能说明:修改用户帐号。
语  法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s ][-u ][用户帐号]
补充说明:usermod可用来修改用户帐号的各项设定。
参  数:
 -c<备注>  修改用户帐号的备注文字。
 -d登入目录>  修改用户登入时的目录。
 -e<有效期限>  修改帐号的有效期限。
 -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
 -g<群组>  修改用户所属的群组。
 -G<群组>  修改用户所属的附加群组。
 -l<帐号名称>  修改用户帐号名称。
 -L  锁定用户密码,使密码无效。
 -s  修改用户登入后所使用的shell。
 -u  修改用户ID。
 -U  解除密码锁定。

效果如下: 

 

 7.问题7

若你是系统管理员,增加一个新的用户账号maker,且在/home下创建新用户的主目录,为新用户设置初始密码,并置于新创建的team1工作组下, 在该用户的目录下创建文件exam1.c;同时创建studio用户账号,并设置初始密码,该账号置于新创建的team2工作组下,最后将exam1.c文件的权限设置为对studio用户可读,但不可执行写和可执行操作。(注意用户切换)

设置权限操作方法如下:

setfacl -R -m u:studio:rx example.c
###这样studio用户就可以访问example.c文件,权限为只读

效果展示:

(不知道为啥,之前的操作看不到了,只有后面这些了) 


 总结

本次培训就到这里了学到了很多Linux的操作,学习Linux任重道远,加油!

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到