DAY1 Linux学习

本篇思维导图

一、VMware

双击“VMware-workstation-full-16.2.3-19376536.exe”进行安装,一路默认,解压“Ubuntu 18.04配置版.7z”文件 ,打开虚拟机后选择“打开虚拟机”,找到解压后的“Ubuntu 18.04配置版”一路双击,打开配置好的虚拟机。

问题与解决

安装VMware时,卡在安装网络驱动的位置

  1. 安装一个更高版本的VMware
  2. 使用清注册表的工具,清注册表

二、Ubuntu

Ubuntu是一个Linux内核的操作系统,

Windows的内核是NT,收费

Ubuntu内核是Linux,不收费,开源的

macos内核是Unix,收费

在使用Linux做嵌入式开发,只需要掌握C语言。

Linux操作系统的优点:免费,开源,支持多线程,有良好的桌面应用,多模块

Ubuntu的优点:更新快,图形化应用,是Linux的发行版本。

GNU是一个计划(GNU is not Unix),打造一个开源的和Unix一样好用的操作系统,GNU仍然是一个半Linux的操作系统。

GPL协议(许可证)要求在GNU开源产品基础上二次开发的产品必须开放源码


 三、熟悉Linux下的终端

  • 打开终端
  1. 点击终端图标
  2. 快捷键Ctrl+alt+t
  3. 鼠标右击桌面再打开终端
  • 调整终端字体
  1. 放大:ctrl+shift+=
  2. 缩小:ctrl+-
  • 关闭终端
  1. ctrl+d
  2. 鼠标点击右上角
  3. exit,退出终端的本质是没有上一个登录用户
  • 分屏打开终端

紫色终端(每个人都能打开的)

  1. ctrl+shif+t

黑色终端

  1. ctrl+shift+e 左右分屏
  2. ctrl+shift+o 上下分屏
  • 命令行提示符
ubuntu@ubuntu:~$ 
ubuntu       用户名
@分隔符
ubuntu:计算机名/主机名
~当前所在路径
$普通用户

#:超级用户的权限,超级用户是root

~:表示当前用户的家目录


  • su 切换用户
  1. su 用户名
  2. su root    (超级用户)
  3. su 直接回车,默认切换到root用户
  • 退出当前用户

直接在终端输入exit就可以了,退出当前登录用户,返回上一个登录用户。

  • passwd修改用户密码
  1. passwd 用户名
  2. sudo passwd root 修改超级用户的密码,因为是使用普通用户的身份,修改超级用户的密码所以需要加sudo
  3. 改密码的过程,所有需要输入密码的地方都不会回显,确认输入就可以
  4. sudo 使用超级用户的权限执行后面的指令。
  • Linux的文件系统结构

倒插树结构,万物皆文件


四、文件相关操作

指令格式

指令        参数        操作数,三者之间一定要有空格作为分隔

有些指令也支持   指令   操作数   参数

【1】查看文件    ls

ls                             回显当前路径下有哪些文件

ls 路径/目录名         该目录下有哪些文件

ls 路径/文件名         回显文件名

ls可以加参数

ls -a

查看文件,包括隐藏文件(前面带.都是隐藏文件)

ls -l

显示文件的详细信息

ls -h

带单位的显示文件的大小(的详细信息)

drwxr-xr-x  2 ubuntu ubuntu 4.0K 四月 24 09:14 桌面

d:文件类型(共7种)

bcd-lsp

b:块设备文件                      -:普通文件

c:字符设备文件                  l:软链接文件

d:目录文件                         s:套接字文件                p:管道文件

2:硬链接文件的个数

ubuntu:文件所属用户(如果没有修改过所属用户默认是创建文件的用户)

ubuntu:文件所属组用户

4.0k:文件的大小

四月 24 09:14:时间戳,文件最后被修改的时间

【2】文件的权限+修改   chmod

一个文件有三个用户,rwxrwxr-x,ls -l显示的文件权限,每三位对应一个用户

rwx                                        rwx                                r-x

  I                                             I                                    I

所属用户的权限u         所属用户的权限g              其他用户的权限o

所有用户:a

r可读
w可写
x可执行
  • chmod修改文件权限,字母

chmod 用户+/-/=权限 文件

练习:

1、给家目录中的Desktop(桌面)的组用户添加可写权限,给Desktop的所有用户取消可写权限,给Desktop的所属用户赋rwx权限。

  • 八进制表示法修改文件权限

八进制数0-7,前导符0

r:4                   w:2                       x:1

chmod         八进制数         文件名,默认文件权限对应三个用户,需要三位八进制数

chmod         0八进制数       文件名,0表示八进制数的前导符,八进制数从左到右依次对应所属用户,所属组用户和其他用户的权限。

创建文件时的默认权限:0775(目录) 0664(文件)

练习:

1、通过八进制数的方式修改家目录下,Muisc(音乐)的权限,所属组用户添加可读权限,其他用户只有可执行权限。

【3】切换当前工作路径   cd

相当于windows下的双击文件夹

cd  目标路径,cd后面的目标路径只能是目录,不能是文件

cd  直接回车,切换到当前用户的家目录。

cd后面可以跟绝对路径也可以跟相对路径,

~是相对路径;

绝对路径:相对于根目录来说的路径,/home/ubuntu,根目录下的home下的Ubuntu目录

相对路径:相对于当路径而言的

相对于当前所在路径而言的,当前路径下的23041目录。

cd . 切换到当前路径

cd .. 切换到上一级路径

pwd---当前的绝对路径

练习:

1、用两种方法实现,从当前用户的家目录下,切换到根目录下的usr目录下的include目录

绝对路径:cd /usr/include

相对路径:cd ../../usr/include

【4】mkdir    创建目录

mkdir  路径/目录名,在给出的路径下,创建一个目录

mkdir  dir1/dir2/dir3  -p,创建具有层级关系的目录,加-p参数是因为没有前面的 dir1/dir2

mkdir  dir1/dir2/dir3  -pv,使创建具有层级关系的目录的过程可视化

练习:

1、在家目录下创建一个23041目录,再在23041下创建dir1/dir2/dir3

2、先把23041清空,再使用rmdir删除空目录23041

【5】rmdir 删除目录

rmdir只能删除空目录

【6】rm 删除文件

rm  路径/文件名,可以删除文件

rm  -r  路径/目录名,可以删除非空目录

【7】touch 创建文件

touch  文件名(可以跟多个文件名)

touch  1 2 3 4 5 ---->创建了分别名为1 2 3 4 5的5个文件

清屏:ctrl+l                 终端输入:clear

通配符 *       匹配一个或多个字符

例子:touch a1 a2 a3 a4 a5 想把这几个文件批量删除,rm a*就能实现删除a开头的所有文件。

【8】cp 复制文件

cp 目标路径/源文件名 目标路径/目标文件名

拷贝目录的时候,需要加-r参数

 cp file1 file2

1、当前路径下file2文件存在时,把file1拷贝一份,覆盖掉之前的file2

2、当前路径下file2文件不存在时,把file1拷贝一份,新建一个file2,存的是file1中的内容

cp file1 /home/ubuntu               默认/home/ubuntu 是路径

1、/home/ubuntu,如果路径下不存在file1,就新建一个file1

2、当路径下,有名为file1的文件时,覆盖掉原有的file1

cp file1 /home/ubuntu/file2

1、/home/ubuntu,如果路径下不存在file2,相当于拷贝并且重名名

2、当路径下,有名为file2的文件时,覆盖掉原有的file2

cp指令,内容相同的文件会存在两份

【9】mv 移动文件

mv 目标路径/源文件名 目标路径/目标文件名

mv file1 file2

1、当前路径下不存在file2文件时,mv操作相当于给file1重命名为file2

2、当前路径下存在file2文件时,mv操作,把file1中的内容覆盖掉原有file2中的内容

mv file1 /home/ubuntu

1、/home/ubuntu下如果不存在file1,会把当前路径下的file1移动到/home/ubuntu目录下 2、/home/ubuntu下如果存在file1,会把当前路径下的file1移动到/home/ubuntu目录下覆盖掉原有的file1

mv file1 /home/ubuntu/file2

1、/home/ubuntu,如果路径下不存在file2,相当于移动并且重名名

2、当路径下,有名为file2的文件时,覆盖掉原有的file2

mv操作,内容相同的文件会存在一份

练习:

1、在家目录下,新建23041目录,在23041目录内,新建文件file1和file2,通过图形化界面,给file1和file2中添加不同的内容,先执行把file1重命名为file3;再把file3中的内容拷贝给file2,要求file2和file3都存在。

2、在1的基础上,把file2拷贝到家目录中。

3、在家目录下,创建一个mydir目录,在mydir下创建一个job目录,拷贝根目录下的bin目录下的bash文件到mydir中并重命名为text,把job重命名为hello。

练习1

练习2

 练习3


五、vim编辑器

vim有四种常用模式

  1. 命令行模式
  2. 插入模式
  3. 底行模式
  4. 可视模式

【1】打开vim编辑器

vim/vi 文件名

vim 1

1、1本身就存在,打开vim编辑器,编辑文件1

2、如果1本身不存在,vim仍然可以打开,编辑后如果保存退出,就会创建文件1,如果直接退出文件1不会保存

【2】命令行模式

vim 文件名,默认就在命令行

插入行回到命令行,按一下esc

不能够写入信息,可以进行复制、粘贴、剪切、行间跳转

        i)复制粘贴+剪切

yy:  复制光标所在行

nyy:复制光标所在行向下n行

p:    在光标所在下一行粘贴

dd:  剪切光标所在行

ndd:剪切光标所在向下n行 (剪切的内容不粘贴就相当于删除)

u:    撤销相当于windows下的ctrl+z

ctrl+r:反撤销

        ii)行间跳转

gg跳到文件首行

G跳转到文件尾行

ngg:跳转到第n行

nG:跳转到第n行

$:跳到光标所在行行尾

0:跳到光标所在行行首

        iii)格式化

gg=G 格式化

        iv)查找单词

/word    /要查找的单词,按下回车,查找到的内容会高亮显示

n:向下查找

N:向上查找

【3】插入行模式

从命令行模式下进入插入行模式,按下i/a/o,I/A/O

i(小写)在光标所在前一位进行插入 日常代码
a在光标的后一位进行插入
o在光标所在的下一行插入
I(大写)在光标所在行的行首进行插入 注释整行
A在光标所在行的行尾进行插入 给某一行代码添加注释内容
O在光标所在的上一行进行插入

【4】底行模式

可以观察vim编辑器的灰色条下面是否有:,有:说明在底行模式

  1. 在命令行模式下,按空格
  2. 在命令行模式下,按shift+;

        i)文件的保存和退出

w:保存

q :退出         如果文件修改过,直接退出会给警告,可以按enter之后q!                        

                      强制退出或者wq保存退出

!:强制执行后面的指令

x  :保存并退出                 wq:保存并退出

        ii)其他操作

noh:取消高亮

set  nu:显示行号

set  nonu:取消行号

vsp  文件名:左右打开两个文件

        iii)替换单词

%s/old/new/ :替换每一行找到的第一个的单词

%s/old/new/g:全文替换

%s/old/new/gc:全文选择性替换

【5】可视模式

进入可视模式:

  1. 鼠标选中
  2. 小写v,块可视,选中一个
  3. 大写V,行可视,选中一行

粘贴:可视模式下的粘贴都在光标所在的后一位进行粘贴

复制:鼠标选中按y

剪切:鼠标选中按d

格式化:选中要格式化的部分按=

练习:

要求不允许切换工作路径

在家目录下创建mydir目录

把/etc/passwd和/etc/group复制到mydir中

把复制过来passwd重命名为passwd.txt,把group重命名为grp.txt

在mydir中嵌套创建dir1/dir2/dir3/dir4

把grp.txt复制到dir1/dir2中,把passwd.txt移动到dir4中

查看dir4中文件的详细信息

把家目录下的mydir删除

以下是本日课程所有练习代码截图:

桌面权限:

 音乐权限:

切换根目录 

练习cpmv命令1

 练习cpmv命令2

 练习cpmv命令3

 创建目录后清空

 课后大练习

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值