摘要
由于机器人SLAM、自动导航、语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码;而ROS又是安装在Linux发行版ubuntu系统之上的,先学一些Linux命令行相关的知识,对后续ROS教程的快速上手会大有帮助。由于后续ROS的开发都是在Linux发行版ubuntu系统上进行,所以本章节就以ubuntu系统为例,对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基础
第2章:ROS入门
第3章:感知与大脑
第4章:差分底盘设计
第5章:树莓派3开发环境搭建
第6章:SLAM建图与自主避障导航
2.google-cartographer机器人SLAM建图
第7章:语音交互与自然语言处理
第8章:高阶拓展
2.centos7下部署Django(nginx+uwsgi+django+python3)
----------------文章将持续更新,敬请关注-----------------
如果大家对博文的相关类容感兴趣,或有什么技术疑问,欢迎加入下面的《SLAM+语音机器人DIY》QQ技术交流群,一起讨论学习^_^