ZYNQ学习之Ubuntu环境下的Shell与APT下载工具

news2024/12/23 18:11:14

基本都是摘抄正点原子的文章:<领航者 ZYNQ 之嵌入式Linux 开发指南 V3.2.pdf,因初次学习,仅作学习摘录之用,有不懂之处后续会继续更新~

一、Ubuntu Shell操作

简单的说Shell 就是敲命令。国内把 Linux 下通过命令行输入命令叫做“敲命令”,国外人玩的 比较洋气,人家叫做“Shell”。因此以后看到 Shell 这个词语第一反应就是在终端中敲命令,将多个Shell命令按照一定的格式放到一个文本中,那么这个文本就叫做 Shell 脚本。

严格意义上来讲,Shell 是一个应用程序,它负责接收用户输入的命令,然后根据命令做出相应的动作,Shell 负责将应用层或者用户输入的命令传递给系统内核,由操作系统内核来完成相应的工作,然后将结果反馈给应用层或者用户。

1.1、Shell 基本操作

Shell命令格式:

command -options [argument]

  • command: Shell 命令名称。
  • options:选项,同一种命令可能有不同的选项,不同的选项其实现的功能不同。
  • argument:Shell 命令是可以带参数的,也可以不带参数运行。
Shell命令支持自动补全功能:
使用自动补全功能以后我们只需要输入命令的前面一部分字母,然后按下TAB键,如果只有一个命令匹配的话就会自动补全这个命令剩下的字母。如果有多个命令匹配的话系统就会发出报警声音,此时再按下一次 TAB 键就会列出所有匹配的命令,

1.2、常用 Shell 命令

1、目录信息查看命令 ls

文件浏览是最基本的操作,Shell 下文件浏览命令为 ls(L的小写),格式如下:

ls [选项] [路径]

ls 命令主要用于显示指定目录下的内容,列出指定目录下包含的所有的文件以及子目录, 它的主要参数有:

  • -a 显示所有的文件以及子目录,包括以“.”开头的隐藏文件。
  • -l 显示文件的详细信息,比如文件的形态、权限、所有者、大小等信息。
  • -t 将文件按照创建时间排序列出。
  • -A 和-a 一样,但是不列出“.”(当前目录)和“..”(父目录)。
  • -R 递归列出所有文件,包括子目录中的文件。

Shell 命令里面的参数是可以组合在一起用的,比如组合“-al”就是显示所有文件的详细 信息,包括以“.”开头的隐藏文件:

7f7f466455dd4c6cb14f142c559b1073.png

2、目录切换命令 cd

要想在 Shell 中切换到其它的目录,使用的命令是 cd,命令格式如下:

cd [路径]

路径就是我们要进入的目录路径,比如下面所示操作:

  • cd /                 //进入到根目录“/”下,Linux 系统的根目录为“/”
  • cd /usr           //进入到目录“/usr”里面
  • cd ..               //进入到上一级目录
  • cd ~               //切换到当前用户主目录

048bee9aa06e4146ae0089f097f5d5c0.png

3、当前路径显示命令 pwd

pwd 命令用来显示当前工作目录的绝对路径,不需要任何的参数,

命令格式如下:

pwd

使用如下图所示:

857623df4e444f6dbce20c1b63034d8e.png

4、系统信息查看命令 uname

要查看当前系统信息,可以使用命令 uname,命令格式如下:

uname [选项]

可选的选项参数如下:

  • -r     列出当前系统的具体内核版本号。
  • -s     列出系统内核名称。
  • -o     列出系统信息。

9d6e69e0d3a14840b55b7bd82f9893cd.png

5、清屏命令 clear

clear 命令用于清除终端上的所有内容,只留下一行提示符。

命令格式如下:

clear

使用如下图所示:

9138d79172df427394d1f136f2d12b75.png

5740100551c74f2d87bab9ec22a21d9a.png

6、切换用户执行身份命令 sudo

Ubuntu(Linux)是一个允许多用户的操作系统,其中权限最大的就是超级用户 root,有时执行一些操作的时候是需要用 root 超级用户身份才能执行,比如安装软件。通过 sudo 命令可以使我们暂时将身份切换到 root 用户。

当使用 sudo 命令的时候是需要输入密码的,这里要注意输入密码的时候是没有任何提示的!

sudo命令格式如下:

sudo [选项] [命令]

选项主要参数如下:

  • -h          显示帮助信息
  • -l           列出当前用户可执行与不可执行的命令
  • -p          改变询问密码的提示符

28b6f35d63764c42b99dc837f4a0f2a4.png

直接使用“adduser test”命令添加用户的时候提示“adduser:只有 root 才能将用户或组添加到系统”。所以要在前面加上“sudo”命令,表示以这条命令以 root 超级用户的身份执行 adduser 操作。

7、添加用户命令 adduser

在讲解 sudo 命令的时候已经用过命令“adduser”,此命令需要 root 超级用户身份去运行。

命令格式如下:

adduser [参数] [用户名]

常用的参数如下:

  • -system                  添加一个系统用户
  • -home DIR             DIR 表示用户的主目录路径
  • -uid ID                    ID 表示用户的 uid。
  • -ingroup GRP        表示用户所属的组名。
8、删除用户命令 deluser

删除用户使用命令“deluser”, 命令参数如下:

deluser [参数] [用户名]

主要参数有:

  • -system 当用户是一个系统用户的时候才能删除
  • -remove-home 删除用户的主目录  
  • -remove-all-files 删除与用户有关的所有文件
  • -backup 备份用户信息

同样的命令“deluser”也要使用“sudo”来以 root 用户运行,以删除前面创建的用户test为例,deluser使用如下图所示:

d82340dc03a54a2585596136acb862fd.png

fd5004d2556946a0a252155237879942.png

9、切换用户命令 su

前面在讲解命令“sudo”的时候说过,“sudo”是以 root 用户身份执行一个命令,并没有更改当前的用户身份,所有需要 root 身份执行的命令都必须在前面加上“sudo”。

命令“su”可以直接将当前用户切换为 root 用户,切换到 root 用户以后就可以尽情地尽情任何操作了!因为你已经获得了系统最高权限,在 root 用户下,所有的命令都可以无障碍执行,不需要在前面加上“sudo”,

“su”命令格式如下:

su [选项] [用户名]

常用选项参数如下:

  • -c -command         执行指定的命令,执行完毕以后回复原用户身份。
  • -login                     改变用户身份,同时改变工作目录和 PATH 环境变量。
  • -m                          改变用户身份的时候不改变环境变量
  • -h                           显示帮助信息

以切换到 root 用户为例,使用如下图所示:

c08c33c501714b1c8506fd38e93ea4e5.png

sudo su切换到root用户,@前面的root表示当前为root超级用户,gbxluo-virtual-machine表示虚拟机名,“/home/gbxluo”表示当前路径,“#”表示当前是root超级用户。

10、显示文件内容命令 cat

Shell 下读取文件内容的方法是使用命令“cat”,命令格式如下:

cat [选项] [文件]

选项主要参数如下:

  • -n         由 1 开始对所有输出的行进行编号。
  • -b         和-n 类似,但是不对空白行编号。
  • -s         当遇到连续两个行以上空白行的话就合并为一个行空白行

97dd51dc752d43b68dcd935c0118554c.png

11、?显示和配置网络属性命令 ifconfig

ifconfig 是一个跟网络属性配置和显示密切相关的命令,通过此命令我们可以查看当前网络属性,也可以通过此命令配置网络属性,比如设置网络 IP 地址等等,此命令格式如下:

ifconfig interface options | address

主要参数如下:

  • interface                 网络接口名称,比如 eth0 等。
  • up                           开启网络设备。
  • down                      关闭网络设备。
  • add                         IP 地址,设置网络 IP 地址。
  • netmask add         子网掩码。

命令 ifconfig 的使用如下图所示,暂时有问题:

2ef90f15269b4c99837d08b8cfccb225.png

12、系统帮助命令 man

通过“man”命令可以查看其它命令的语法格式、主要功能、主要参数说明等, “man”命令格式如下:

man [命令名]

比如我们要查看命令“su”的说明,输入“man su”即可,如下图所示:

bed1c44266ce4cee9cbad508645ca7b8.png

输入man su后,敲击Enter键进入如下界面:

c9f4a55de37642f3b23fb4505ea53ea9.png

press h for help:

3ce56b94f1f0449bb1cf627354bb177c.png

press q to quit!按q键返回上一层或退出到终端。

13、 系统重启命令 reboot

通过点击 Ubuntu 主界面右上角的齿轮按钮来选择关机或者重启系统,或者使用 Shell 命令“reboot”来重启系统,直接输入命令“reboot”然后点击回车键即可。

命令格式如下:

reboot

使用如下图所示:

2088511356c94da689dd57b5df5fd30b.png

14、系统关闭命令 poweroff

使用命令“poweroff”就可以关闭系统,在终端中输 入命令“poweroff”然后按下回车键即可关闭 Ubuntu 系统。

命令格式如下:

poweroff

使用如下图所示:

941fef0fcdfe4027bc2ac29a14387f48.png

15、软件安装命令 install

Ubuntu 下很多软件是需要先自行下载源码,下载源码以后自行编译,编译完成以后使用命令“intsall”来安装。当然 Ubuntu 下也有其它的软件安装方法,但是用的最多的就是自行编译源码然后安装,尤其是嵌入式 Linux 开发。

命令“install”格式如下:

  •         install [选项]... [-T]  源文件       目标文件
  • 或: install [选项]...        源文件...    目录
  • 或: install [选项]... -t     目录           源文件...
  • 或: install [选项]... -d    目录...

“install”命令是将文件(通常是编译后的文件)复制到目的位置,在前三种形式中,将源文件复制到目标文件或将多个源文件复制到一个已存在的目录中同时设置其所有权和权限模式。在第四种形式会创建指定的目录。

命令“install”通常和命令“apt-get”组合在一起使用的,关于“apt-get”命令下面会讲。

二、Ubuntu的APT下载工具

APT 下载工具是Ubuntu 下用的最多的下载工具。

APT 下载工具可以实现软件自动下载、配置、安装二进制或者源码的功能。APT 下载工具和install命令结合在一起构成了 Ubuntu 下最常用的下载和安装软件方法。它解决了 Linux 平台下安装软件的一个缺陷,即软件之间相互依赖。

选择APT 工具的安装源

APT 采用的C/S模式,也就是客户端/服务器模式,PC作为客户端,当需要下载软件的时候就向服务器请求,因此需要知道服务器的地址(服务器的地址也叫做安装源或者更新源【安装的源头或更新的源头,就是url超链接】)。

aea3411642f049e5b9862029d4c5a576.png

单击软件和更新后,弹出如下窗口:

55c5bafa74ee48e39cc31284bd8b65df.png

在上图中的“Ubuntu 软件”选项卡下面的“下载自”就是 APT 工具的安装源,因为人在中国,所以需要选择中国的服务器,否则的话可能会导致下载失败。

这个也就是网上说的Ubuntu安装成功以后要更新源。

在我们使用APT工具下载安装或者更新软件的时候,首先会在下载列表中与本机软件对比,看一下需要下载哪些软件,或者升级哪些软件,默认情况下APT会下载最新的软件包,被安装的软件包所依赖的其它软件也会被下载安装。

1、更新本地数据库

想查看本地哪些软件可以更新的话可以使用如下命令:

sudo apt-get update
这个命令会访问源地址,并且获取软件列表并保存在本电脑上,过程如下图所示:
6a1029786f064f46a62a4ca7fdce90b3.png

2、?检查依赖关系

如果想查看本地哪些软件可以更新的话可以使用如下命令:

sudo apt-get check

0c1adc1cd7c14664a43a274f36733f79.png

3、软件安装

安装软件,使用如下命令:

sudo apt-get install package-name

可以看出上述命令是由“apt-get”和“install”组合在一起的,“package-name”就是要安装的软件名字,“apt-get”负责下载软件,“install”负责安装软件。

比如要安装软件Ubuntu 下的串口工具“minicom”,就可以使用如下命令:

sudo apt-get install minicom

执行上述命令以后就会自动下载和安装 minicom 软件,如下图所示:

f82c0226bd584169832dad769e9ddbd3.png

上图就是安装 minicom 这个软件的过程,在安装的过程中,会有如下所示询问: 您希望继续执行吗?[Y/n] 如果希望继续执行的话就输入 y,如果不希望继续执行的话就输入 n。

安装完成以后我们 直接在终端输入如下命令打开 minicom 这个串口软件:

minicom -s

打开以后的 minicom 软件如下图所示:

3e810bc578d04db4b87f98aa0126eb99.png

退出 minicom可以直接按下 ESC 键。

minicom的使用可以上网搜索,待以后用着再说。

正点原子推荐使用apt替代 apt-get

查了一下原因主要如下:

apt 默认启用一些对用户实际使用有益的操作,比如:可以在 apt 安装或删除操作过程中显示进度条。在更新软件包列表的时候还可以提示你可以升级的包的数量。虽然使用 apt-get 也可以实现这些功能,但是 apt 默认开启这些特性。

虽然 apt 有些命令和 apt-get 类似,但是 apt 并没有向后兼容 apt-get。这意味着不可能使用 apt 完全替代 apt-get 命令。

7ecd82c066364934bb52127979e66bea.png

apt 也有一些自己的命令。

bcba87b2723e4bd7a9fa86b287e404fc.png

apt-get 已被弃用?

没有任何信息表明 apt-get 已被弃用,实际上也不应该,因为它还有比 apt 更多的功能。对于一些使用场景,如脚本操作,可能还要用 apt-get 命令。

应该使用 apt 还是 apt-get?

作为普通的 Linux 用户,优先使用 apt,它是 Linux 发行版推荐的命令。它提供了包管理必要的选项,更重要的是便于记忆。

  • apt 是 apt-get 和 apt-cache 的子集,为包管理提供必要的命令。
  • 虽然 apt-get 没有被弃用,但是作为普通 Linux 用户,推荐开始频繁的使用apt。

4、?软件更新

更新软件的话使用命令:

sudo apt-get upgrade package-name

其中 package-name 为要升级的软件名字,比如我们升级刚刚安装的 minicom 这个软件,如下图所示:

bb2c9db3925c405180f7d858ab0ea164.png

866a672f4ed54116a831d6e395ffe247.png

从上图可以看出,minicom 已经是最新的了,不用更新,不过有其它软件需要更新,因此会自动更新其它的软件。

这里是不是有问题?我只想更新minicom,它倒好,全给我更新了?

5、卸载软件

要卸载某个软件的话使用如下命令:

sudo apt-get remove package-name

其中 package-name 是要卸载的软件,比如卸载前面安装的 minicom 这个软件,操作如下图所示:

3a1e0290fba744369c3fa8140c919a3f.png

从上图中可以看出软件 minicom 被卸载掉了。

参考链接:

ZYNQ领航者V2开发板 — 正点原子资料下载中心 1.0.0 文档

apt 和 apt-get 的区别 - 掘金

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1551481.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux_进程概念_冯诺依曼_进程概念_查看进程_获取进程pid_创建进程_进程状态_进程优先级_环境变量_获取环境变量三种方式_3

文章目录 一、硬件-冯诺依曼体系结构二、软件-操作系统-进程概念0.操作系统做什么的1.什么叫做进程2.查看进程3.系统接口 获取进程pid- getpid4.系统接口 获取父进程pid - getppid5.系统接口 创建子进程 - fork1、手册2、返回值3、fork做了什么4、基本用法 6.进程的状态1、进程…

智慧工地安全生产与风险预警大平台的构建,需要哪些技术?

随着科技的不断发展&#xff0c;智慧工地已成为现代建筑行业的重要发展趋势。智慧工地方案是一种基于先进信息技术的工程管理模式&#xff0c;旨在提高施工效率、降低施工成本、保障施工安全、提升施工质量。一般来说&#xff0c;智慧工地方案的构建&#xff0c;需要通过集成物…

2024年做视频号小店是不是明智之举?这篇文章告诉你答案

大家好&#xff0c;我是电商糖果 视频号自从去年电商的知名度打开之后&#xff0c;不少朋友都盯上这块肥肉。 要知道现在可是短视频电商的时代&#xff0c;抖音&#xff0c;快手靠做电商赚了不少钱。 视频号又怎么会放过这次的风口呢&#xff1f; 也有不少想做电商的朋友问…

安卓SharedPreferences使用

目录 一、简介二、使用2.1 getSharedPreferences2.2 增加数据2.3 读取数据2.4 删除数据2.5 修改数据2.6 清除数据2.7 提交数据 一、简介 SharedPreferences是Android平台上一个轻量级的存储类&#xff0c;主要是保存一些常用的配置比如窗口状态&#xff0c;一般在Activity、重…

《Linux运维实战:达梦DM8数据库之开启本地归档》

一、归档概述 在达梦数据库归档模式下&#xff0c;数据库同时将重做日志写入联机日志文件和归档日志文件中分别进行存储。采用归档模式会对系统的性能产生影响&#xff0c;然而&#xff0c;当系统一旦出现介质故障&#xff0c;如磁盘损坏时&#xff0c;利用归档日志&#xff0c…

康耐视visionpro-CogToolBlock工具详细说明

CogToolBlock功能: 将多个工具组合在一起完成某个功能&#xff0c;接口简单且可以重用 CogToolBlock操作说明&#xff1a; 1.打开工具栏&#xff0c;双击或点击鼠标拖拽添加CogToolBlock CogToolBlock操作说明 ②.添加输入图像&#xff0c;右键“链接到”或以连线拖拽的方式选…

【JavaWeb】Day22.maven安装介绍

目录 一.初识Maven 什么是maven? Maven的作用 二.Maven概述 1. Maven介绍 2.Maven模型 3. Maven仓库 三. Maven安装 1.下载 2. 安装步骤 1. 解压安装 2. 配置本地仓库 3.配置阿里云私服 4. 配置Maven环境变量 一.初识Maven 什么是maven? Maven是apache旗下的一个…

稀碎从零算法笔记Day27-LeetCode:螺旋矩阵

题型&#xff1a;矩阵(二维数组)、边界问题 链接&#xff1a;54. 螺旋矩阵 - 力扣&#xff08;LeetCode&#xff09; 来源&#xff1a;LeetCode 题目描述 给你一个 m 行 n 列的矩阵 matrix &#xff0c;请按照 顺时针螺旋顺序 &#xff0c;返回矩阵中的所有元素。 很有趣的…

Transformer的前世今生 day11(Transformer的流程)

Transformer的流程 在机器翻译任务中&#xff0c;翻译第一个词&#xff0c;Transformer的流程为&#xff1a; 先将要翻译的句子&#xff0c;一个词一个词的转换为词向量送入编码器层&#xff0c;得到优化过的词向量以及K、V&#xff0c;将K、V送入解码器层&#xff0c;并跟解码…

Games104 听后笔记

1、为什么UE5要自己写一套STL库 因为传统的STL库中&#xff0c;例如&#xff1a;vector&#xff0c;它一般采用的是双倍扩容法&#xff0c;加入1000个数据装满了&#xff0c;现在需要又加一个&#xff0c;那么就开辟了2000个数据的空间&#xff0c;那么当前就又999的数据空间暂…

【差分约束+并查集】第十三届蓝桥杯省赛C++ A组 Java A组/研究生组《推导部分和》(C++)

【题目描述】 【输入格式】 【输出格式】 【数据范围】 【输入样例】 5 3 3 1 5 15 4 5 9 2 3 5 1 5 1 3 1 2 【输出样例】 15 6 UNKNOWN 【思路】 题解来源&#xff1a;AcWing 4651. $\Huge\color{gold}{推导部分和}$ - AcWing 【代码】 #include<bits/stdc.h> #define…

CentOS7.7安装XIAOJUSURVEY问卷系统|表单收集|简单考题

XIAOJUSURVEY问卷系统&#xff0c;适用于市场调研、客户满意度调研、在线考试、投票、报道、测评等众多场景。数据能力上&#xff0c;经过上亿量级打磨&#xff0c;沉淀了分题统计、交叉分析、多渠道分析等在线报表能力&#xff0c;快速满足专业化分析。 一、在CentOS7.7上安装…

设计模式系列之--观察者模式-画图讲解

观察者模式已经是比较常见的设计模式了&#xff0c;并且使用的频率也比较高, 那么我们什么时候用&#xff0c;简而言之就是&#xff0c;当我们一个主体改变&#xff0c;它所有下级要跟着改变的时候就需要用了&#xff0c;比如&#xff1a;换肤&#xff0c;全局数据修改&#x…

原型链-(前端面试 2024 版)

来讲一讲原型链 原型链只存在于函数之中 四个规则 1、引用类型&#xff0c;都具有对象特性&#xff0c;即可自由扩展属性。 2、引用类型&#xff0c;都有一个隐式原型 __proto__ 属性&#xff0c;属性值是一个普通的对象。 3、引用类型&#xff0c;隐式原型 __proto__ 的属…

Windows安装Odoo结合内网穿透实现公网访问本地企业管理系统

文章目录 前言1. 下载安装Odoo&#xff1a;2. 实现公网访问Odoo本地系统&#xff1a;3. 固定域名访问Odoo本地系统 前言 Odoo是全球流行的开源企业管理套件&#xff0c;是一个一站式全功能ERP及电商平台。 开源性质&#xff1a;Odoo是一个开源的ERP软件&#xff0c;这意味着企…

python、execl数据分析(数据描述)

一 python 1.各函数 1.1python库的安装与导入 #pip install os#pip install matplotlib#pip install seaborn#pip install scikit-learn#pip install scipy#修 改 工 作 目 录import osos.getcwd () # 查看当前工作环境os.chdir( F :\my course\database ) # 修改工作环境o…

网络稳定性(蓝桥省赛)

0网络稳定性 - 蓝桥云课 (lanqiao.cn) 知识点&#xff1a;克鲁斯卡尔生成树&#xff0c;lca&#xff0c;倍增 最小生成树的模板&#xff1a;最小生成树【模板】-CSDN博客 题解代码如下&#xff1a; #include<bits/stdc.h> using namespace std; const int N3e5100; co…

智慧光伏:企业无纸化办公

随着科技的快速发展&#xff0c;光伏技术不仅成为推动绿色能源革命的重要力量&#xff0c;更在企业办公环境中扮演起引领无纸化办公的重要角色。智慧光伏不仅为企业提供了清洁、可持续的能源&#xff0c;更通过智能化的管理方式&#xff0c;推动企业向无纸化办公转型&#xff0…

CBO VS ABO,哪种策略才更能优化FB广告?

海外创业时&#xff0c;FB广告无疑是吸引目标受众、推动业务增长的重要渠道之一&#xff01;然而令大家头疼的却是在CBO与ABO的选择上&#xff0c;今天就带大家一起解读这两种常见的广告策略。了解两者之间的区别、优缺点及适用场景。 CBO 和 ABO 分别是什么&#xff1f; CBO&a…

网络面试——浏览器输入url到显示主页的过程

浏览器输入URL到显示主页的过程通常可以分为以下步骤&#xff1a; 1. **URL解析**&#xff1a; - 当用户在浏览器的地址栏中输入URL时&#xff0c;浏览器会首先对该URL进行解析。 - 解析URL包括识别协议&#xff08;例如HTTP、HTTPS&#xff09;、主机名&#xff08;例如…