第一周——计算机基础

该博客总结了计算机发展历史与服务器硬件知识,介绍Vmware软件下载安装及通过其安装rocky 8.5、ubuntu 22.04虚拟机的方法,还总结了Linux常用基本命令、文件系统、安全模型、权限及ACL相关知识,以及vim的常见操作。

1. 总结计算机发展相关,并且总结服务器硬件相关知识

计算机(computer):俗称电脑,是一种能接受和存储信息,并按照存储在其内部的程序对海量的数据进行自动,告诉处理,然后把处理结果输出的现代化智能电子设备。
1946年世界上第一台计算机ENIAC(elcetronic  numerical integrator and calculator 电子数字积分计算机) 在美国滨州大学诞生,是美国奥丁伯武器试验场为了满足弹道计算需要而研制的,使用了17468只电子管,占地170平方米,重达3顿,耗电174千瓦。每秒可以运行5000次加法或减法运算。 

计算机的发展历史

  • 第一代计算机(1946-1957)
  • 电子管时代 第二代计算机(1958-1964)
  • 晶体管时代 第三代计算机(1965-1970)集成电路时代 第
  • 四代计算机(1971年以后) 大规模集成电路时代

服务器硬件

  • CPU: CISC 复杂指令集 RISC 精简指令集 X86架构 ARM架构等
  • 主板: bios 芯片,I/O 控制芯片 ,各种接口等
  • 内存: 数据存储的临时场所,速度快,易丢失
  • 硬盘 机械硬盘HDD 固态硬盘SSD
  • 网卡:

其他硬件

  • 远程管理卡
  • 阵列卡
  • 电源
  • 显卡
  • 热插拔技术
  • 机柜

2. 制作一个教程,说明vmware软件如何下载安装。安装rocky 8.5, ubuntu 22.04,并结合xshell说明如何通过虚拟IP登入系统。

Vmware 软件下载安装

官方下载软: https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html
获取其他方式获取 资料里提供的有
具体安装过程,可百度搜索,内容很多

通过Vmware 安装虚拟机

配置Vmware 网络

1)编辑——虚拟机网络编辑器——更改网络设置
在这里插入图片描述
2)添加网络Vmnet2 NAT网络

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
3)新增Vmnet3 仅主机网络
在这里插入图片描述

安装rocky8.5

针对 rocky8.5 创建虚拟机环境

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/1caac6c3e9404ed980b760在这里插入图片描述
0c76a96c58.png)
在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述![在这里插入图片描述](https://img-blog.csdnimg.cn/5d80ee7a40a649b0b7262a2a0d03d2ee.png

安装rock8.5 系统


在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

提示密码过简单,点2次done
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
完成安装

用户登录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

网络连接打开
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装Ubuntu 22.04系统

参考rocky8.5准备虚拟机环境
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
远程连接
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 结合man命令总结linux常用基本命令用法,以及查看帮助文档的方法。

基本用法

新安装系统,如果使用man帮助无输出,可以执行mandb命令 生成数据库
使用一个命令的man帮助的话,先查询此命令的man帮助的类别分组,然后根据需要加上数字参数查询
下面以passwd 命令举例 ,passwd

1分组 默认命令吧需要数字 其他组需要加上数字,参考下面passwd 命令示例

[root@rocky8 ~]# whatis passwd
openssl-passwd (1ssl) - compute password hashes
passwd (1)           - update user's authentication tokens
passwd (5)           - password file

[root@rocky8 ~]# man  passwd

PASSWD(1)                                                                                    User utilities                                                                                    PASSWD(1)

NAME
       passwd - update user's authentication tokens


[root@rocky8 ~]# man 5 passwd
PASSWD(5)                                                                               Linux Programmer's Manual                                                                              PASSWD(5)

NAME
       passwd - password file

文档后的使用方法

使用less 命令实现,查找翻页方法可参考 vim命令模式下查找翻页的相关方法
退出: q
space :向下翻页
b : 向上翻页
1G 翻到页末
gg 翻到文档开头
/搜索字符 从当前位置向下搜索
n 向下翻 N 向上翻
?搜索字符 从当前位置向上搜索
n 搜索命令相同,下一个
N 搜索命令相反 上一个

4. 总结linux文件系统相关知识,并结合操作演示文件操作常见的命令

  • linux文件和目录被组织成一个单根倒置的树结构
  • 文件系统从根目录开始用 / 表示
  • 根文件系统rootfs : root filesystem
  • 标准文件系统(如ext4 等),文件名称大小写敏感 例如: MAIL Mail mail mAiL
  • . 开头的的隐藏文件
  • 文件名最长255个字节
  • 包括路径在内文件名称最长4095个字节
  • 蓝色-目录 绿色-可执行文件 红色-压缩文件 浅蓝色-链接文件 灰色-其他文件
  • 除了斜杠和NUL所有字符都有效,但是使用特殊的字符的目录和文件不推荐使用,有些特殊字符 需要用引号来引号
    在这里插入图片描述
    常见的文件类型
  • -普通文件
  • d 目录文件
  • l 符号连接文件link
  • b 快设备 block
  • c 字符设备character
  • p 管道文件pipe
  • s 套接字文件 socket
    在这里插入图片描述

xshell 远程登录

文件——新建——连接——填写名称(随意需要)、主机(要连接的机器IP地址)
在这里插入图片描述
用户身份验证——填写用户名及密码
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

常见命令

cd pwd
cd /root
cd ../
cd - 
pwd 


basename dirname

[root@rocky8 ~]# cd /etc/sysconfig/network-scripts/
[root@rocky8 network-scripts]# basename /etc/sysconfig/network-scripts/
network-scripts
[root@rocky8 network-scripts]# dirname /etc/sysconfig/network-scripts/
/etc/sysconfig
[root@rocky8 network-scripts]# dirname /etc/sysconfig/network-scripts/ifcfg-ens3
/etc/sysconfig/network-scripts
[root@rocky8 network-scripts]# basename /etc/sysconfig/network-scripts/ifcfg-ens3
ifcfg-ens3
[root@rocky8 network-scripts]#

[root@rocky8 network-scripts]# url=http://nginx.org/nginx-1.18.0.tar.gz
[root@rocky8 network-scripts]# basename $url
nginx-1.18.0.tar.gz
[root@rocky8 network-scripts]#


2.8创建空文件和刷新时间 touch
2.9 复制文件和目录 cp
备份 保留属性  -a
cp -a /etc/1 /opt/1.bak

先备份在覆盖 -b 
[root@rocky8 data]# cp -b 1 1.bak
[root@rocky8 data]# ls
1  1.bak  1.bak~ 

1.bak~ 为备份文件
2.10 移动文件和重命名文件 mv  rename 
rename 可以比例修改文件名
为所有以f开头包含conf 的文件加上.bak后缀
[root@rocky8 data]# touch f{1..4}.conf
[root@rocky8 data]# ls
f1.conf  f2.conf  f3.conf  f4.conf
[root@rocky8 data]# rename 'conf' 'conf.bak' f*
[root@rocky8 data]# ls
f1.conf.bak  f2  f2.conf.bak  f3.conf.bak  f4.conf.bak

去掉所有的bak后缀
[root@rocky8 data]# ls
f1.conf.bak  f2  f2.conf.bak  f3.conf.bak  f4.conf.bak
[root@rocky8 data]# rename '.bak' '' *.bak
[root@rocky8 data]# ls
f1.conf  f2  f2.conf  f3.conf  f4.conf


2.11 删除文件 rm
尽量不要使用rm -rf直接删除,可以先使用mv 移走,备份起来,过了一个缓冲期在删除
删除 软连接文件夹方式,
此重方式不能删除软连接
[root@rocky8 data]# rm -rf 4/
[root@rocky8 data]# ll
total 0
drwxr-xr-x. 2 root root  6 Nov 23 22:41 1
-rw-r--r--. 1 root root  0 Nov 23 22:38 2
lrwxrwxrwx. 1 root root 12 Nov 23 22:40 4 -> /root/data/1
[root@rocky8 data]# ls
1  2  4
删除软链接的正确方式 
[root@rocky8 data]# rm -rf 4
[root@rocky8 data]# ls
1  2


2.13 目录操作 tree  mkdir rmdir
rmdir 只能删除空目录
定义rm的别名,删除执行mv进行备份
[root@rocky8 data]# alias rm='DIR=/data/backup`date +%F%T`;mkdir -p $DIR;mv -t $DIR'
[root@rocky8 data]# rm f

3、文件元数据和节点表结构
3.1 inode表
inode 编号用完,将不能再次创建文件,删除文件,inode号将会被释放
[root@rocky8 ~]# df -i /boot
Filesystem     Inodes IUsed  IFree IUse% Mounted on
/dev/sda1      524288   311 523977    1% /boot
[root@rocky8 ~]# touch /boot/test/1.txt
[root@rocky8 ~]# df -i /boot
Filesystem     Inodes IUsed  IFree IUse% Mounted on
/dev/sda1      524288   312 523976    1% /boot
[root@rocky8 ~]# rm -rf /boot/test/1.txt
[root@rocky8 ~]# df -i /boot
Filesystem     Inodes IUsed  IFree IUse% Mounted on
/dev/sda1      524288   311 523977    1% /boot


删除大文件方式
先清空文件,再做删除操作,文件太大,可能会导致系统卡死
[root@rocky8 ~]# cat /dev/null > /var/log/huge.log

3.2-4 软链接  硬链接 ln
软件链接 ln -s file  file.link     文件路径要使用绝对路径
硬链接  ln  file file.link
删除文件夹软链接的正确方式,参考2.11  删除文件rm 操作失误,将会导致将源文件删除,相反软链接未删除

删除软链接 路径最后不要到 /
软硬链接的区别,参考文档

4、IO重定向,管道
4.1标准输入和输出
一个程序打开文件时,会给每个打于的文件分配唯一的数字
0 stdin
1 stdout
2 stderr


/dev/pts/1

[root@rocky8 ~]# tail -f /var/log/messages

[root@rocky8 data]# ll /dev/std*
lrwxrwxrwx. 1 root root 15 Nov 24 09:12 /dev/stderr -> /proc/self/fd/2
lrwxrwxrwx. 1 root root 15 Nov 24 09:12 /dev/stdin -> /proc/self/fd/0
lrwxrwxrwx. 1 root root 15 Nov 24 09:12 /dev/stdout -> /proc/self/fd/1


[root@rocky8 data]# pidof tail
6126
[root@rocky8 data]# ll /proc/6126/fd
total 0
lrwx------. 1 root root 64 Nov 24 14:02 0 -> /dev/pts/1
lrwx------. 1 root root 64 Nov 24 14:02 1 -> /dev/pts/1
lrwx------. 1 root root 64 Nov 24 14:02 2 -> /dev/pts/1
lr-x------. 1 root root 64 Nov 24 14:02 3 -> /var/log/messages
lr-x------. 1 root root 64 Nov 24 14:02 4 -> anon_inode:inotif
4.2  IO重定向
1>> 把STDOUT 重定向到文件
2>         把STDERR  重定向到文件
&>  或者>&  把标准输入和错误都重定向
追加
>>   追加标准输出
2 >> 追加标准错误
&>>  合并追加


实现标准输出和错误的互换
[root@rocky8 data]# ( cat /etc/centos-release ls /etc/xx 3>&1 1>&2 2>&3  ) >f1.txt 2>f2.txt
[root@rocky8 data]# cat f2.txt
Rocky Linux release 8.5 (Green Obsidian)
[root@rocky8 data]# cat f1.txt
cat: ls: No such file or directory
cat: /etc/xx: No such file or directory

1、Linux 的标准输入输出流只有三种,即 0-stdin 、1-stdout、2-stderr
2&标准流 是一个指向标准流的指针,如果没有 & ,就是创建的一个普通的文件句柄。
3>&标准流 指将某个文件重定向到另一个流
4、这里的 3>&1 ,的含义是:先创建一个文件句柄 3,将其重定向到1(out),再将 1 重定向 2 ,最后再将 2 重定向到 3 。这么绕了一圈就是初学编程时交换两个变量的过程,将 error 的内容重定向到 out 了,out 重定向到 error 。
————————————————
版权声明:本文为优快云博主「毕小宝」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/wojiushiwo945you/article/details/100727522
4.2.2 标准输入重定向 
tr 命令 转换或删除字符
选项
-d 删除
-s 去除连续重复
-t 第一字符集转换成第二字符集
-c 取字符集的补集

大小写字母转换
[root@rocky8 data]# tr 'a-z' 'A-Z' < /etc/issue
\S
KERNEL \R ON AN \M

[root@rocky8 data]# cat /etc/issue
\S
Kernel \r on an \m

删除文件中的包含abc的任意字符
[root@rocky8 data]# tr -d swap <fstab
标准输入重定向

[root@rocky8 data]# cat <1 >2

把多行重定向
[root@rocky8 data]# cat > file1 <<EOF
> 多行重定向
> test
> D
> d
> EOF
[root@rocky8 data]# cat file1
多行重定向
test
D
d


高级重定向写法
CMD <<< "string	"
[root@rocky8 data]# tr 'a-z' 'A-Z' <<< "I am wang"
I AM WANG

CMD1 < < (CMD2)
[root@rocky8 data]# tr 'a-z' 'A-Z'  < <(echo I am wang)
I AM WANG

错误的格式
[root@rocky8 data]# tr 'a-z' 'A-Z' << (echo I am wang)
-bash: syntax error near unexpected token `('
[root@rocky8 data]# tr 'a-z' 'A-Z'  < < (echo I am wang)
-bash: syntax error near unexpected token `<'

4.3 管道
命令1 | 命令2 |命令3
[root@rocky8 data]# echo "2^3" |bc
8
[root@rocky8 data]# ls |tr 'a-z' 'A-Z'
2
FILE1

4.3.2 tee 命令 重定向多个目标, 经常和管道符一起使用
格式  
命令1 | tee [-a] 文件名 |命令2
-a 追加
[root@rocky8 data]# echo {0..3}
0 1 2 3
[root@rocky8 data]# echo {1..100} |tr ' ' + |bc
5050

[root@rocky8 data]# echo {1..10..2}
1 3 5 7 9
[root@rocky8 data]# echo {1..100..2} |tr ' ' + |bc
2500

[root@rocky8 data]# seq -s + 1  10
1+2+3+4+5+6+7+8+9+10
[root@rocky8 data]# seq -s + 1  100 |bc
5050

[root@rocky8 data]# seq -s + 1 2 10
1+3+5+7+9
[root@rocky8 data]# seq -s + 1 2 10 |bc
25


[root@rocky8 data]# cat  <<EOF |tee 1
> test
> D
> F
> EOF
test
D
F
[root@rocky8 data]# cat 1
test
D
F
[root@rocky8 data]#

5、用户组管理 
useradd userdel usermod 

groupadd groupdel groupmod


[root@rocky8 data]# useradd gentoo -G bin,root -s /bincsh -c "Gentoo Distribution"
[root@rocky8 data]# id gentoo
uid=1002(gentoo) gid=1004(gentoo) groups=1004(gentoo),1(bin),0(root)
[root@rocky8 data]# grep gentoo /etc/passwd
gentoo:x:1002:1004:Gentoo Distribution:/home/gentoo:/bincsh

[root@rocky8 data]# groupadd webs
[root@rocky8 data]# useradd nginx -G webs
[root@rocky8 data]# useradd varnish -G webs
[root@rocky8 data]# useradd mysql -s /sbin/nologin
[root@rocky8 data]# echo mage | passwd --stdin nginx

文本常见处理工具

cat 
nl  读取文本 加行号 等价与 cat -b
[root@rocky8 data]# cat 1
test
D
F

g

[root@rocky8 data]# cat -n 1
     1  test
     2  D
     3  F
     4
     5  g
[root@rocky8 data]# cat -b 1
     1  test
     2  D
     3  F

     4  g
[root@rocky8 data]# nl 1
     1  test
     2  D
     3  F

     4  g

tac 逆向显示文本内容  按照行进行逆向
示例参考rev
rev 将同一行的内容逆向显示
[root@rocky8 data]# cat 1
test
D
F

g
[root@rocky8 data]# tac 1
g

F
D
test
[root@rocky8 data]# rev 1
tset
D
F

g

hexdump 查看非文本文件内容
[root@rocky8 data]# hexdump -C - 512 /dev/sda
more  less

head tail 

cut  提取文本文件或STDIn 数据的指定列

[root@rocky8 data]# cat passwd
root:x:0:0:root:/root:/bin/bash
[root@rocky8 data]# cut -d: -f1 passwd
root
[root@rocky8 data]# cut -d: -f2 passwd
x
[root@rocky8 data]# cut -d: -f1,3-4,7 passwd
root:0:0:/bin/bash
[root@rocky8 data]#


[root@rocky8 data]# ifconfig |head -n2 |tail -n1 |cut -d" " -f10
10.0.0.150
[root@rocky8 data]# ifconfig |head -n2 |tail -n1 |tr -s " "  |cut -d" " -f3
10.0.0.150

[root@rocky8 data]# df  |tr -s " " |cut -d " " -f5 |tr -dc "[0-9\n]"

0
0
2
0
8
1
26
1
0

paste 合并多个文件

[root@rocky8 data]# cat 1
test
D
F
g
[root@rocky8 data]# cat 2
1
2
3
4


[root@rocky8 data]# paste -d: 1 2
test:1
D:2
F:3
g:4
[root@rocky8 data]# paste -s 1 2
test    D       F       g
1       2       3       4
[root@rocky8 data]# paste -s 1 2
[root@rocky8 data]# paste -s -d: 1 2
test:D:F:g
1:2:3:4


5. 总结linux安全模型

资源分派

  • Authentication:认证,验证用户身份
  • Authorization: 授权,不同的用户设置不同的权限
  • Accounting |Audition 审计
    当用户登录成功后,系统会自动分配令牌token ,包括用户标识和组成员信息等

用户
管理员 :root ,0
普通用户: 系统用户1-999 登录用户 1000-60000

管理员组 :root 0
普通组: 1000+
用户和组的关系
主要组和附加组 一个用户只能有一个主组 主组默认和创建的用户名一致
安全上下文
linux 安全上下文context :运行中的程序以进程(process) 以进程发起者的身份运行,进程所能够访问的资源的权限,取决于进程运行者的身份

6. 总结学过的权限,属性及ACL相关命令及选项,示例。

文件权限 rwx 读写执行权限 chmod

r 4 读
w 2 写
x 1 执行

[root@rocky8 data]# touch test
[root@rocky8 data]# ls
test
[root@rocky8 data]# ll
total 0
-rw-r--r--. 1 root root 0 Nov 23 11:45 test
[root@rocky8 data]# chmod 777 test
[root@rocky8 data]# ll
total 0
-rwxrwxrwx. 1 root root 0 Nov 23 11:45 test

[root@rocky8 data]# chmod o=- test
[root@rocky8 data]# ll
total 0
drwxr-xr-x. 2 root root 6 Nov 23 11:48 1
-rwxrwx---. 1 root root 0 Nov 23 11:45 test
[root@rocky8 data]# chmod g=rw test
[root@rocky8 data]# ll
total 0
drwxr-xr-x. 2 root root 6 Nov 23 11:48 1
-rwxrw----. 1 root root 0 Nov 23 11:45 test
[root@rocky8 data]# chmod u-x test
[root@rocky8 data]# ll
total 0
drwxr-xr-x. 2 root root 6 Nov 23 11:48 1
-rw-rw----. 1 root root 0 Nov 23 11:45 test
[root@rocky8 data]# chmod o+r test
[root@rocky8 data]# ll
total 0
drwxr-xr-x. 2 root root 6 Nov 23 11:48 1
-rw-rw-r--. 1 root root 0 Nov 23 11:45 test

特殊权限

SUID 4 作用于二进制文件上,用户将继任此程序所有者的权限
GUID 2 作用于二进制上,用户将继任此程序的所有组的权限 ,作用于目录上,此目录新建的文件的所属组将自动从此目录继承
STICKY 1 作用于目录上,此目录的文件只能由所有者删除

[root@rocky8 data]# touch test
[root@rocky8 data]# ll
total 144
drwxr-xr-x. 2 root root      6 Nov 23 11:48 1
-rwxr-xr-x. 1 root root 143400 Nov 23 11:59 ls
-rw-r--r--. 1 root root      0 Nov 23 12:00 test
# SUID权限
[root@rocky8 data]# chmod u+s ls
[root@rocky8 data]# ll
total 144
drwxr-xr-x. 2 root root      6 Nov 23 11:48 1
-rwsr-xr-x. 1 root root 143400 Nov 23 11:59 ls
-rw-r-Sr--. 1 root root      0 Nov 23 12:00 test

[root@rocky8 data]# chown .bin t
[root@rocky8 data]# ll
total 0
drwxr-xr-x. 2 root bin 6 Nov 23 12:09 t
[root@rocky8 data]# touch t/1
[root@rocky8 data]# ll t/
total 0
-rw-r--r--. 1 root root 0 Nov 23 12:09 1
#SGID 权限
[root@rocky8 data]# chmod g+s t
[root@rocky8 data]# ll
total 0
drwxr-sr-x. 2 root bin 15 Nov 23 12:09 t
[root@rocky8 data]# touch t/2
[root@rocky8 data]# ll t/
total 0
-rw-r--r--. 1 root root 0 Nov 23 12:09 1
-rw-r--r--. 1 root bin  0 Nov 23 12:09 2

#Sticky 权限
[root@rocky8 data]# chmod o+t t/
[root@rocky8 data]# ll
total 0
drwxr-sr-t. 2 root bin 24 Nov 23 12:09 t
[root@rocky8 data]#


acl

[root@rocky8 data]# touch f1.txt
[root@rocky8 data]# ll
total 0
-rw-r--r--. 1 root root 0 Nov 23 12:14 f1.txt

# 添加acl权限
[root@rocky8 data]# setfacl -m u:wang:- f1.txt
#查询acl 权限
[root@rocky8 data]# getfacl f1.txt
# file: f1.txt
# owner: root
# group: root
user::rw-
user:wang:---
group::r--
mask::r--
other::r--

#复制文件的acl权限给另外一个文件
[root@rocky8 data]# getfacl f1.txt |setfacl  --set-file=- f2.txt
[root@rocky8 data]# getfacl f2.txt
# file: f2.txt
# owner: root
# group: root
user::rw-
user:wang:---
group::r--
mask::r--
other::r--

# 清理acl权限
[root@rocky8 data]# setfacl -x u:wang f2.txt
[root@rocky8 data]# getfacl f2.txt
# file: f2.txt
# owner: root
# group: root
user::rw-
group::r--
mask::r--
other::r--
#清理所有权限
[root@rocky8 data]# setfacl -b f2.txt



7. 结合vim几种模式,学会使用vim几个常见操作。

1)如何打开文件。并在打开文件(命令模式)之后如何退出文件。

打开文件 vim file
退出文件 未更新不保存退出:q 有更新不保存退出:q! 保存退出:wq

2)打开文件(命令模式)之后,进入插入模式。并在插入模式中如何回到打开文件的状态(命令模式),并在命令模式之后如何退出文件。

esc 从插入模式回到命令模式,退出文件,参考1)

3)打开文件(命令模式)之后,进入插入模式,编写一段话,““马哥出品,必属精品””, 之后从插入模式中如何回到打开文件的状态(命令模式),并在命令模式之后如何退出文件。

vim f1.txt
按i 键进入插入模式
马哥出品,必属精品
esc回到命令模式
:wq

4)使用cat命令验证文件内容,是刚刚自己写的内容。

在这里插入图片描述

5)(可选),命令模式下,光标在单词,句子上进行前后,上下跳转。行复制粘贴。行删除。"

h 句子上前移 l 后移
j上跳 k 下跳

yy 行复制 p 行粘贴 dd 删除行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值