摘要

由于机器人SLAM、自动导航、语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码;而ROS又是安装在Linux发行版ubuntu系统之上的,先学一些Linux命令行相关的知识,对后续ROS教程的快速上手会大有帮助。由于后续ROS的开发都是在Linux发行版ubuntu系统上进行,所以本章节就以ubuntu系统为例,对Linux命令行相关的知识进行展开讲解,本章节主要内容:

1.Linux简介

2.安装Linux发行版ubuntu系统

3.Linux命令行基础操作



3.Linux命令行基础操作    

通过上面的安装操作,我们现在就可以在虚拟机上体验ubuntu系统的奥妙了,按下虚拟机中的“电源”按钮便可以给ubuntu系统开机了,赶紧去试试吧。

3.1.打开终端命令行             

虽然也能像windows系统中用图形交互的方式使用ubuntu系统,但是终端命令行的交互方式在ubuntu系统中使用的更广泛。所以我们得知道如何打开ubuntu系统中的终端命令行,其实很简单:

方法一:右键->打开终端。

方法二:Ctrl+Alt+t 或者 Ctrl+Shift+t

3.2.常用快捷键               

(1)tab键

tab键是有两个功能,一个一次tab命令补齐,另一个两次tab提示内容,如果我们不记得一个命令的全拼,或者不记得某个路径的全拼,可以输入命令的前面几个字母,然后使用tab键自动补齐命令或查看提示信息。

(2)Ctrl+c组合键

Ctrl+c中断,强行打断进程,如果终端命令行正在执行某个进程的程序,这时想要中断掉该进程就可以使用Ctrl+c。

(3)Ctrl+d组合键

Ctrl+d退出,相当于exit和quit,比如用python命令进入python交互环境后,就可以用Ctrl+d退出python交互。

(4)Ctrl+Shift+c组合键和Ctrl+Shift+v组合键

在终端中复制粘贴时,先用鼠标选中需要复制的内容,然后用Ctrl+Shift+c进行复制,再用Ctrl+Shift+v进行粘贴。

(5)图形界面和纯文本交互模式切换

Ctrl+Alt+F1~F6:纯文本交互模式登入tty1~tty6终端机;

Ctrl+Alt+F7:切回图形界面。

3.3.终端命令行中一些常用符号了解  

(1)用户主目录:~

(2)系统根目录:/

(3)一般用户提示符:$

(4)root用户提示符:#

3.4.关机与重启命令           

(1)关机

$ sudo poweroff

(2)重启

$ sudo reboot

3.5.目录与文件相关命令        

(1)显示文件和目录列表

$ ls

(2)切换目录

$ cd <目标目录>

(3)显示当前所在工作目录

$ pwd

(4)创建文件

$ touch <文件名>

(5)复制文件

$ cp <源文件路径> <目标文件路径>

(6)移动文件

$ mv <源文件路径> <目标文件路径>

(7)删除文件

$ rm <文件名>

(8)显示文件内容

$ cat <文件名>

(9)创建文件夹

$ mkdir <文件夹名>

(10)删除文件夹

$ rmdir <文件夹名>

3.6.文件权限               

(1)修改文件读写可执行权限,具体权限由掩码值决定,如777权限全开

$ sudo chmod 777 <文件名>

(2)修改文件所有者

$ sudo chown <用户名>:<组名> <文件名>

3.7.文件查找               

(1)locate命令查找文件

$ sudo updatedb

$ locate <待查找文件名>

(2)find命令查找文件

$ find -name <待查找文件名>

3.8.网络相关命令            

(1)网络连接与否测试

$ ping <待测目标主机IP或域名>

(2)本地IP地址查看

$ ifconfig

(3)远程登录到目标主机

$ ssh <目标主机用户名>@<目标主机IP地址>

3.9.系统软件安装与软件运行方法   

(1)系统默认的软件安装方法apt-get

$ sudo apt-get update

$ sudo apt-get install <软件包名称>

(2)source方法执行系统脚本,比如执行用户默认配置脚本.bashrc

$ source ~/.bashrc

(3)./方法执行一般可执行文件

$ ./<可执行文件>

3.10.文本编辑器vim使用        

(1)vim查看文件内容

$ vim <文件名>

(2)vim进入编辑模式

在vim查看文件内容的界面中,按i键进入编辑模式,然后就可以编辑文件的内容了

(3)vim退出编辑模式

在vim编辑文件内容的界面中,按Esc键退出编辑模式,然后就又回到查看文件内容的界面了

(4)vim编辑内容保存

vim在编辑完文件内容,退出到查看文件内容的界面后,可以输入“:w”对编辑内容进行保存,也可以输入“:wq”对编辑内容进行保存并退出vim

3.11.关于Linux命令行知识的学习方法建议

上面介绍的Linux命令是一些平时用的频率比较高的,但是Linux命令的数量非常的多,并且很多命令都不常用,而且每个命令都有很多额外的参数,所以想要一下子记住所有的Linux命令和使用方法是不现实的,也是没有必要的。

建议大家对常用的一些Linux命令进行学习后,Linux命令有了一个大概的整体了解。对在日后的实际工作中遇到不会的的命令,通过上网查找使用教程来学习和使用。

后记

------SLAM+语音机器人DIY系列【目录】快速导览------

第1章:Linux基础

1.Linux简介

2.安装Linux发行版ubuntu系统

3.Linux命令行基础操作

第2章:ROS入门

1.ROS是什么

2.ROS系统整体架构

3.在ubuntu16.04中安装ROS kinetic

4.如何编写ROS的第一个程序hello_world

5.编写简单的消息发布器和订阅器

6.编写简单的service和client

7.理解tf的原理

8.理解roslaunch在大型项目中的作用

9.熟练使用rviz

10.在实际机器人上运行ROS高级功能预览

第3章:感知与大脑

1.ydlidar-x4激光雷达

2.带自校准九轴数据融合IMU惯性传感器

3.轮式里程计与运动控制

4.音响麦克风与摄像头

5.机器人大脑嵌入式主板性能对比

6.做一个能走路和对话的机器人

第4章:差分底盘设计

1.stm32主控硬件设计

2.stm32主控软件设计

3.底盘通信协议

4.底盘ROS驱动开发

5.底盘PID控制参数整定

6.底盘里程计标

第5章:树莓派3开发环境搭建

1.安装系统ubuntu_mate_16.04

2.安装ros-kinetic

3.装机后一些实用软件安装和系统设置

4.PC端与robot端ROS网络通信

5.Android手机端与robot端ROS网络通信

6.树莓派USB与tty串口号绑定

7.开机自启动ROS节点

第6章:SLAM建图与自主避障导航

1.在机器人上使用传感器

2.google-cartographer机器人SLAM建图

3.ros-navigation机器人自主避障导航

4.多目标点导航及任务调度

5.机器人巡航与现场监控

第7章:语音交互与自然语言处理

1.语音交互相关技术

2.机器人语音交互实现

3.自然语言处理云计算引擎

第8章:高阶拓展

1.miiboo机器人安卓手机APP开发

2.centos7下部署Django(nginx+uwsgi+django+python3)

----------------文章将持续更新,敬请关注-----------------

如果大家对博文的相关类容感兴趣,或有什么技术疑问,欢迎加入下面的《SLAM+语音机器人DIY》QQ技术交流群,一起讨论学习^_^

SLAM+语音机器人DIY系列:(一)Linux基础——3.Linux命令行基础操作的更多相关文章

  1. SLAM+语音机器人DIY系列:(一)Linux基础——1.Linux简介

    摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的, ...

  2. SLAM+语音机器人DIY系列:(一)Linux基础——2.安装Linux发行版ubuntu系统

    摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的, ...

  3. SLAM+语音机器人DIY系列:(六)SLAM建图与自主避障导航——2.google-cartographer机器人SLAM建图

    摘要 通过前面的基础学习,本章进入最为激动的机器人自主导航的学习.在前面的学习铺垫后,终于迎来了最大乐趣的时刻,就是赋予我们的miiboo机器人能自由行走的生命.本章将围绕机器人SLAM建图.导航避障 ...

  4. SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——1.安装系统ubuntu_mate_16.04

    摘要 通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整体的认识.接下来就正式进入机器人大脑(嵌入式主板:树莓派3)的开发.本章将从树莓派3的开发环境搭建入手,为后续ros开 ...

  5. SLAM+语音机器人DIY系列:(二)ROS入门——1.ROS是什么

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  6. SLAM+语音机器人DIY系列:(二)ROS入门——2.ROS系统整体架构

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  7. SLAM+语音机器人DIY系列:(二)ROS入门——3.在ubuntu16.04中安装ROS kinetic

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  8. SLAM+语音机器人DIY系列:(二)ROS入门——4.如何编写ROS的第一个程序hello_world

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

  9. SLAM+语音机器人DIY系列:(二)ROS入门——5.编写简单的消息发布器和订阅器

    摘要 ROS机器人操作系统在机器人应用领域很流行,依托代码开源和模块间协作等特性,给机器人开发者带来了很大的方便.我们的机器人“miiboo”中的大部分程序也采用ROS进行开发,所以本文就重点对ROS ...

随机推荐

  1. 大数据小视角2:ORCFile与Parquet,开源圈背后的生意

    上一篇文章聊了聊基于PAX的混合存储结构的RCFile,其实这里笔者还了解一些八卦,RCfile的主力团队都是来自中科院的童鞋在Facebook完成的,算是一个由华人主导的编码项目.但是RCfile仍 ...

  2. jenkins+docker 持续构建非docker in docker

    工欲善其事必先利其器,为了解脱程序员的,我们程序员本身发明了很多好用的工具,通过各种工具的组合来达到我们想要的结果 本文采用jenkins docker svn maven作为相关工具,项目sprin ...

  3. Ubuntu18.04(linux)安装MySQL

    安装 mysql sudo apt-get --purge remove mysql-server mysql-common mysql-client sudo apt-get install mys ...

  4. 斯坦福CS224n课程作业

    斯坦福CS224n作业一 softmax 作业要求如下: 解析:题目要求我们证明\(softmax\)函数具有常数不变性. 解答:对于\(x+c\)的每一维来说,有如下等式成立: \[softmax( ...

  5. TensorFlow从1到2(二)续讲从锅炉工到AI专家

    图片样本可视化 原文第四篇中,我们介绍了官方的入门案例MNIST,功能是识别手写的数字0-9.这是一个非常基础的TensorFlow应用,地位相当于通常语言学习的"Hello World!& ...

  6. Go:学习笔记兼吐槽(1)

      Go:学习笔记兼吐槽(1) Go:学习笔记兼吐槽(2) Go:学习笔记兼吐槽(3) 自动添加分号 在很多其他的编程语言中,每一行代码的结尾都必须有分号(假设一行中只有一句代码),Golang 的开 ...

  7. RIP 实验

    一.环境准备 1. 软件:GNS3 2. 路由:c7200 二.实验操作 实验要求: 1. 理解 RIP 协议的工作原理 2. 理解 RIPv1.RIPv2 的特性 3. 掌握 RIP 协议的基本配置 ...

  8. 通过 React Hooks 声明式地使用 setInterval

    本文由云+社区发表 作者:Dan Abramov 接触 React Hooks 一定时间的你,也许会碰到一个神奇的问题: setInterval 用起来没你想的简单. Ryan Florence 在他 ...

  9. 第5章 令牌自省端点(Token Introspection Endpoint) - IdentityModel 中文文档(v1.0.0)

    OAuth 2.0令牌自省的客户端库是作为HttpClient扩展方法提供的. 以下代码将引用令牌发送到内省端点: var client = new HttpClient(); var respons ...

  10. Css3 笔记 动画 和定位属性

    transform 变形属性属性:translate 平移,rotate 旋转, scale 缩放,skew 倾斜 ◆ translate :指定对象的2D平移第一个参数对应X轴,第二参数对应Y轴:如 ...