Shell看起来只是一个黑黑的命令框,刚开始接触会觉得很丑,毕竟与Win/Mac的华丽界面比起来,命令行终端直接可以丑拒了。但是,实际上它的功能要强大得多,毕竟Linux一开始就是广泛应用于服务器,通过命令行终端进行交互,命令行程序非常丰富,且功能强大,以后你会慢慢爱上终端的,毕竟先通过程序菜单找到要运行的程序,然后再点击相应的功能菜单来实现的方式,只能说是降低了操作的入门门槛,真正的强大通过输一个命令,简单改一下参数就可以快速运行,这才是王道啊!没有人会违背真香定律,是的,没有!

下面通过简单的几个命令来了解下树莓派:

  1. lscpu查询CPU相关信息
pi@raspberrypi4:~ $ lscpu
Architecture: armv7l
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Thread(s) per core: 1
Core(s) per socket: 4
Socket(s): 1
Vendor ID: ARM
Model: 3
Model name: Cortex-A72
Stepping: r0p3
CPU max MHz: 1500.0000
CPU min MHz: 600.0000
BogoMIPS: 108.00
Flags: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32

可以看到,这个树莓派用的是4核的ARM处理器,最高频率可以达到1500MHz,我用的树莓派4B版本。

  1. free查询内存使用情况
pi@raspberrypi4:~ $ free -h
total used free shared buff/cache available
Mem: 3.4Gi 269Mi 252Mi 48Mi 2.9Gi 2.9Gi
Swap: 99Mi 23Mi 76Mi

可以看到,内存总量是3.4GB,其他列还显示了已用(used)和可用(free)的内存空间。(我使用的是树莓派4B的4GB内存版本,由于显存是共享内存的,我划分了500MB的内存用于显存,所以内存总量显示3.4GB。)本命令增加了选项-h,显示结果更方便读取,如果不加选项的话,默认是以字节为单位显示的。

pi@raspberrypi4:~ $ free
total used free shared buff/cache available
Mem: 3557628 275424 258740 50068 3023464 3073320
Swap: 102396 24064 78332
  1. fdisk查看存储情况
pi@raspberrypi4:~ $ sudo fdisk -l
#省略部分输出
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 8192 532479 524288 256M c W95 FAT32 (LBA)
/dev/mmcblk0p2 532480 62333951 61801472 29.5G 83 Linux

该命令前面增加了sudo,是由于fdisk命令的运行需要特殊权限,sudo提供了系统管理员的身份来执行后面的命令,否则就会提示权限不足。

从结果的最后两行可以看出,存储空间(对于树莓派来说即是SD卡)被分为了两个分区,一个分区256MB的W95 FAT分区,专门用于树莓派的开机启动,另一个分区29.5GB的Linux分区,用于存储其他的所有数据。

  1. uname显示操作系统相关信息
pi@raspberrypi4:~ $ uname -a
Linux raspberrypi4 4.19.75-v7l+ #1270 SMP Tue Sep 24 18:51:41 BST 2019 armv7l GNU/Linux

选项-a表示显示所有信息。这里可以看出,系统使用的内核版本是Linux 4.19.75,后面是内核发布时间2019年9月24日。

  1. ifconfig查看网络接口
pi@raspberrypi4:~ $ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.54 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::5e05:c235:4dd:3b53 prefixlen 64 scopeid 0x20<link>
ether dc:a6:32:28:15:5f txqueuelen 1000 (Ethernet)
RX packets 24702945 bytes 1961712790 (1.8 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 17687861 bytes 2484313544 (2.3 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 64181 bytes 37372243 (35.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 64181 bytes 37372243 (35.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.68.1 netmask 255.255.255.0 broadcast 192.168.68.255
inet6 fe80::a0ef:56be:9272:981 prefixlen 64 scopeid 0x20<link>
inet6 240e:398:9881:62a0::1 prefixlen 128 scopeid 0x0<global>
inet6 240e:398:9881:62a0:424:b386:145:8d40 prefixlen 64 scopeid 0x0<global>
ether dc:a6:32:28:15:60 txqueuelen 1000 (Ethernet)
RX packets 6 bytes 1643 (1.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 56 bytes 10666 (10.4 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

其中,eth0代表了以太网接口,wlan0代表WiFi接口,lo是虚拟出来的本地地址,用来表示本机。从上述输出中可以看到树莓派的网络地址信息,例如,以太网地址是192.168.1.54。

  1. 树莓派专用命令

上述的命令都是Linux系统通用的,而接下来简要介绍下树莓派提供的vcgencmd命令,用于和树莓派的硬件直接交互。

pi@raspberrypi4:~ $ vcgencmd measure_temp
temp=56.0'C

上述命令中,通过设置measure_temp选项,返回树莓派的CPU核心温度。

pi@raspberrypi4:~ $ vcgencmd measure_volts
volt=0.8472V

上述命令中,通过设置measure_volts选项,返回树莓派的核心电压。

本期就先到这里,后续我们还将继续探索树莓派Shell,以及一些强大有趣的命令。

欢迎关注我的公众号,持续更新中~~~

来感受Linux命令行的“真香定律”的更多相关文章

  1. Linux命令行与Shell脚本编程大全

    快来参加<Linux命令行与Shell脚本编程大全>学习吧,提升技能,展示自我. 点击链接即可进入学习:https://s.imooc.com/WTmCO6H 课程亮点适合零基础读者,从零 ...

  2. Linux 命令行下搜索工具大盘点,效率提高不止一倍!

    在 Linux 命令行下进行文本关键字的搜索,大家肯定第一时间会想到 grep 命令.grep 命令确实十分强大,但如果需要用到它更加灵活的功能时,可能命令就会显得十分复杂. 于是,为了简化 grep ...

  3. 你以为只有马云会灌鸡汤?Linux 命令行也会!

    你以为只有马云会灌鸡汤?Linux 命令行也会! "Linux 太南了o(╥﹏╥)o","我累了不想奋斗了o(︶︿︶)o"... 不知道你有没有想过,在你快丧失 ...

  4. 像黑客一样使用 Linux 命令行

    前言 之前在博客园看到一篇介绍 IntelliJ IDEA 配置的文章,它里面用的是 gif 动态图片进行展示,我觉得很不错.所以在我今天以及以后的博文中,我也会尽量使用 gif 动图进行展示.制作 ...

  5. 详解Linux命令行下常用svn命令

    1.Linux命令行下将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/do ...

  6. linux 命令行 光标移动技巧

    linux 命令行 光标移动技巧 看一个真正的专家操作命令行绝对是一种很好的体验-光标在单词之间来回穿梭,命令行不同的滚动.在这里强烈建立适应GUI节目的开发者尝试一下在提示符下面工作.但是事情也不是 ...

  7. 在linux命令行下执行php 程序

    如何在linux命令行下,执行php程序. 例子 打印当前时间 php -r "echo time()" 随机输出一个数字 php -r "echo rand(1,20) ...

  8. git代理,windows命令行代理,linux命令行代理

    下载不动设置代理:git config --global http.proxy http://127.0.0.1:1080git config --global https.proxy https:/ ...

  9. [转]12款最佳Linux命令行终端工具

    摘要 “工欲善其事必先利其器”,作为菜鸟,也是从别人那里偷学来的一些东东.今天看到同事用到一个终端命令行工具,觉得自己弱爆了.然后在网上搜了下该工具.发现类似的工具还是挺多的,只是自己不知道罢了. 原 ...

随机推荐

  1. docker漏洞复现环境搭建

    0x00 docker简介 把原来的笔记整理了一下,结合前几天的一个漏洞,整理一篇简单的操作文档,希望能帮助有缘人. docker是一个开源的应用容器引擎,开发者可以打包自己的应用到容器里面,然后迁移 ...

  2. 各种有趣vbs,bat脚本

    短信轰炸.vbs Dim btn,ie Set ie = WScript.CreateObject("InternetExplorer.Application") ie.Visib ...

  3. OAuth 2.0授权框架详解

    目录 简介 OAuth的构成 refresh Token Authorization Code模式 隐式授权 Resource Owner 授权密码认证 Client 认证授权 github的OAut ...

  4. java开发三年,Java中接口的使用你得知道,不然你凭什么涨薪

    接口概述: 接口是Java语言中的一种引用类型,是方法的"集合",所以接口的内部主要就是定义方法,包含常量,抽象方法(JDK 7及以前),额外增加默认方法和静态方法(JDK 8), ...

  5. zabbix的搭建及操作(4)实现邮件,钉钉,微信报警

    实现邮件报警 网页版邮箱中开启 POP3/SMTP/IMAP 生成授权码并记录 Server端安装配置邮件服务器 1.Yum安装邮件服务器 yum -y install mailx dos2unix ...

  6. PHP 获取本周、今日、本月的起始时间戳

    当前周的开始时间(周一)$begintime = mktime(0, 0, 0, date('m'), (date('d') - (date('w')>0 ? date('w') : 7) + ...

  7. 在iOS中使用ZBar扫描二维码和条形码

    最近做了个外包项目,里面用到了二维码扫描和微信支付!之前比较熟悉的是ZXing,但是在Xcode7.1里面发现竟然莫名的不支持,木有办法,从网上查了一下还有一种支持二维码扫描的东西,没错就是接下来我要 ...

  8. 如何解析 redis 的 rdb 文件

    目录 安装工具 解析 redis 的 rdb 文件 命令行工具使用,先看 --help 生成内存报告 使用参数过滤想要的数据 比较两个 rdb 文件 查看一个 key 的内存使用情况 常见问题 FAQ ...

  9. devc++编译时 undefined reference to `__imp_WSAStartup'

    socket编程时遇到的问题:

  10. Beta冲刺随笔——测试

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 这个作业要求在哪里 团队作业第五次--Alpha冲刺 这个作业的目标 团队进行Alpha冲刺 作业正文 正文 其他参考文献 无 ...