嵌入式学习-linux

前言

        本章节主要介绍一下linux下进行嵌入式开发的常用命令,如果你有这个基础,那么跳过即可。

        个人理解,在linux中,我认为最重要的一点是要牢记一点,linux中一切皆文件,我们执行着一些命令的本质与在window双击桌面图标进入应用并没有什么两样,只是界面更加不友好而已,特别是在我学完arm的虚拟文件系统后,更加深刻的理解了这点。

目录

前言

1.linux文件系统

1.1linux文件系统结构作用

1.2 linux文件类型

1.3 系统输入成功打开的三个文件

1.3.1 标准输入

1.3.2 标准输出

1.3.3标准错误输出

1.3.4重定向

2.linux常用命令

sudo

su

ls

touch

mkdir

cp

rm

mv

cat

less

stat

file

wc

du

grep

|

locate

find

vim

man

history

!命令

打包压缩指令

压缩

tar

zip

压缩包(压缩格式)

.bz2

.gz

.xz

解压


1.linux文件系统

1.1linux文件系统结构作用

  • /         根目录
  • /bin    存放用户命令
  • /etc    系统配置
  • /lib     库文件
  • /mnt   挂在文件,类似于u盘,硬盘
  • /var    日志
  • /boot  引导启动文件
  • /home 家目录 --用户只有在家目录才有最高权限
  • /root    linux最高权限用户
  • /dev     设备文件
  • /usr      系统资源文件,内核源码

1.2 linux文件类型

  • 普通文件(-)
  • 目录文件(d)
  • 字符设备文件(c)
  • 块设备文件(b)
  • 符号连接文件(l)
  • 套接字文件(s)
  • 管道文件(p)

1.3 系统输入成功打开的三个文件

        这部分操作的主要目的便是可以通过重定向将你想输入、输出的内容导入文件中,比如所sudo cat /etc/passwd > pa.txt 便是将这个命令的输出结果重定向输出到pa.txt文件中。(id代表着这个文

.xz

1.3.1 标准输入

打开终端是默认打开,只有这个打开了我们才能输入命令

第一个打开的文件,id为0

1.3.2 标准输出

命令的显示结果,显示再标准输出文件中,默认输出在终端

id1

1.3.3标准错误输出

命令出错的时候,显示在标准错误输出中

id 2

1.3.4重定向

标准输入重定向

        0< 或者直接写<

标准输出重定向

        1> 或者直接写>

标准错误输出重定向

        2>或者直接写>

2.linux常用命令

[] 中的参数都是可选参数

sudo

作用:使用超级用户权限执行命令

语法:sudo 命令

案例:

        sudo /etc/shadow

说明:使用后会提示输入密码

su

作用:切换用户身份

语法:su - 用户名

案例:

        su - root        #切换为root用户,作用和su -相同

ls

作用:查看目录下文件

语法:ls [-l -h -i -d]

        -l:显示文件的长格式信息

        -h:配合-l,以更加人性化的方式显示文件大小

        -a:显示隐藏文件、

        -i:查看文件的inode节点信息,inode类似于身份证

        -d:查看目录长格式信息

        长格式信息格式:

                权限 硬链接个数 所有者 所属组 文件大小 修改时间

touch

作用:创建文件

语法:touch 文件1 文件2 ...

mkdir

作用:创建目录

语法:mkdir 目录1 目录2 ...

案例:mkdir mk1        #创建单个目录mk1

        mkdir mk1 mk2        #创建多个目录mk1和mk2

cp

作用:复制,将path1复制到path2

语法:cp [-r] path1 path2

案例:

        touch text1

        mkdir mk1

        cp text1 ./mk1

rm

作用:删除文件

语法:rm [-r] 文件名

        -r:可选,删除文件夹使用

注意!!!

        使用这个命令一定要做好备份,或者要反复确认思考,删除后将不可恢复

案例:

        cp file1 file2        #备份

        rm file1

mv

作用:修改文件名和移动文件的位置

语法:mv 参数1 参数2

        参数1 被移动的

        参数2 移动到的位置

案例:

        mkdir mk

        mv a.txt ./mk/            #将文件a.txt移动到mk目录下

        mv a.txt b.txt             #将a.txt重命名为b.txt

cat

作用:查看文件内容

语法:cat 文件路径

案例:

        cat /etc/shadow        #查看用户配置信息

less

作用:进入文件浏览模式,按页显示

语法:less 文件路径

        浏览模式中:/key        查找文件中的key

                             ?key        从后往前查找key

        推出浏览模式:q

stat

作用:显示文件的元信息

语法:stat 文件名

file

作用:查看文件类型

语法:file 文件名

wc

作用:统计文件信息

语法:wc [-c -m -l -w] 文件路径

        -c:统计bytes

        -m:统计字符数量

        -l:统计行数

        -w:统计单词数量

du

作用:查看文件占磁盘空间大小

语法:du [-s -h] 参数

        -s:进行汇总计算

        -h:显示单位

注:文件大小的单位是字节,磁盘空间分配的最小单位是大块,1大块==4k==8小块

grep

作用:过滤关键字

语法:grep [-n] 关键字 文件路径

        -n:再结果中显示匹配的行号

案例:

        grep bsp file1       #查看所有关键字包含bsp的进程

|

作用:将符号左边的结果,作为符号右边的输入

语法:cat 文件名1 | gerp 关键词 文件路径

案例:

        ps -aux | grep bsp        #查看所有包含关键字bsp的进程

locate

作用:查找文件位置

语法:locate 路径 [-l -n -r] 文件名

        -i:忽略大小写

        -n:指定显示结果数量

        -r:使用正则表达式进行搜索

find

作用:搜索文件位置

语法:find 路径 [-name -type -size n[c w b k M G]] 参数

        参数:支持通配符*

       -type:其中文件类型

        -size:

          +n:大于 n 的文件

    -n:小于 n 的文件

    n:等于 n 的文件

                单位:

        c:字节

        w:字(2字节)

        b:块(512字节)

        k:千字节(1024字节)

        M:兆字节(1024 KB)

        G:吉字节(1024 MB)

vim

作用:文本编译器(类似于记事本)

语法:vim file1 file2 ...

下载:

        sudo apt install vim        # Debian/Ubuntu
        sudo yum install vim        # CentOS/RHEL

基本操作模式

  1. 普通模式(Normal Mode):默认模式,用于导航和编辑。按 Esc 返回此模式。

  2. 插入模式(Insert Mode):输入文本。通过 iao 等键进入。

  3. 命令行模式(Command Mode):按 : 进入,执行保存、退出等命令。

导航

  • hjkl:左、下、上、右移动光标。

  • w / b:向前/向后跳转单词。

  • gg / G:跳转到文件首/尾。

编辑

  • i:在光标前插入。

  • a:在光标后插入。

  • dd:删除当前行。

  • yy:复制当前行。

  • p:粘贴。

保存与退出

  • :w:保存文件。

  • :q:退出 Vim。

  • :wq:保存并退出。

  • :q!:强制退出不保存

当然,这只是最基本的使用,我们可以通过编辑~/.vimrc文件设置自己的偏好来解锁更加便捷的功能,具体的话直接搜索vim配置即可,也可以搜索史上最牛的vim配置配置一些具有特效的vim。^_^~~

man

作用:打开手册

语法:man 参数

案例:

          man ls

          man cp

后续使用:用于查看c或者c++中的一些函数的使用

history

作用:查看历史命令

语法:history

!命令

作用:执行上一条以参数开头的命令

语法:!参数

例:!g        执行上一条以g开头的命令

打包压缩指令

        如果命令执行后出现命令为没有找到命令,大概率是系统没有下载这些解压软件,使用命令执行后建议执行的命令可以直接下载。

压缩

tar

作用:压缩问价,格式为tar

语法:tar [-z -c -v -f] 压缩包 被压缩1 被压缩2 ...

        -z:表示使用gzip,可以不写

        -c:创建包

        -v:创建过程可视化

        -f:后跟包名

zip

作用:压缩文件,格式为zip

语法:zip [-r -c -v -f] 压缩包 被压缩1 被压缩2 ...

        -r:被压缩的文件包含文件夹

        -c:创建包

        -v:创建过程可视化

        -f:后跟包名

压缩包(压缩格式)

.bz2

语法:tar cvjf 压缩包名称 被压缩文件1 被压缩文件2 ...

        -j:压缩包格式为.tar.bz2

.gz

语法:tar cvzf 压缩包名称 被压缩文件1 被压缩文件2 ...

        -z:压缩包格式为.tar.gz

.xz

语法:tar cvJf 压缩包名称 被压缩文件1 被压缩文件2 ...

        -J:压缩包格式为.tar.zx

解压

tar压缩包

语法:tar xvf 压缩包

        x:解压缩

zip压缩包

语法:unzip [-d] 压缩包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值