[ROS基础-2]Ubuntu系统基本操作与基本命令讲解

系列文章目录

[ROS基础-1] Linux系统介绍与ubuntu安装(virtualbox) [ROS基础-2] Ubuntu系统基本操作与基本命令讲解


前言

我们在上一博客中带大家已经完成ubuntu的安装,而想要掌握Linux系统,则需要掌握其相关操作以及基本的shell命令等。以下介绍的为我们在学习ROS时常用的操作以及命令。


一、Linux基本操作

1.更换源

更换源有多种方法。

第一种方法是直接在图形界面下的操作方式。点开左下角的扩展,点击全部,找到“软件和更新”并打开
在这里插入图片描述
点击其他站点。
在这里插入图片描述
这边有多种源可供选择,博主不在学校的时候习惯用阿里源,用学校的网可以使用中科大的源,点击“选择服务器”。
在这里插入图片描述
点击关闭,出现这一提示,再点击关闭,并输入密码。
在这里插入图片描述
至此源就换了,但是还需后续更新和升级。

第二种方法是运用命令更换源。

  1. 备份源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
  1. 命令行打开sources.list文件
sudo gedit /etc/apt/sources.list
  1. 修改sources,list文件,这边以阿里源为例,其他源可以利用CSDN查找
#  阿里镜像源

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

至此第二种方法更换源完成,但是我们还需要进行更新并升级,切记在每次换源之后都需要进行此步骤

sudo apt-get update && sudo apt-get upgrade

一定要记得联网哦。

2.软件安装与卸载

图形界面下的软件安装卸载比较简单,这边就介绍通过终端的安装卸载方式

(1)apt方式

  • 普通安装
apt-get install softname1 softname2 …
  • 修复安装
apt-get -f install softname1 softname2... 
  • 重新安装
apt-get --reinstall install softname1 softname2...
  • 移除式卸载
apt-get remove softname1 softname2 …
  • 清除式卸载
apt-get --purge remove softname1 softname2...

在之后的ROS学习中经常会使用的软件包的安装与卸载,apt是需要经常用到的方式。

(2)dpkg方式

  • 普通安装
dpkg -i package_name.deb
  • 移除式卸载
dpkg -r pkg1 pkg2 ...
  • 清除式卸载
dpkg -P pkg1 pkg2...

(3)源码安装

首先解压缩源码压缩包然后通过tar命令来完成

  • 解xx.tar.gz
tar zxf xx.tar.gz 
  • 解xx.tar.Z
tar zxf xx.tar.Z 
  • 解xx.tgz
tar zxf xx.tgz 
  • 解xx.bz2
bunzip2 xx.bz2 
  • 解xx.tar
tar xf xx.tar

然后用cd命令进入到解压出的目录中,建议先读一下README之类的说明文件,因为此时不同源代码包或者预编译包可能存在差异,然后建议使用ls -F命令(实际上我的只需要 ll 命令即可)查看一下可执行文件,可执行文件会以*号的尾部标志。
一般依次执行

./configure
make
sudo make install

即可完成安装。

3.文档编辑

文档编辑可以在终端中进行,也可以在图形界面下的gedit中完成,而在终端中可以运用vi命令,也可以使用vim命令,两者中vi是系统自带的,vim需要通过apt安装,但是vim编辑器相对来说容易上手谢。

(1)gedit编辑

图形界面中可以运用双击需要编辑的文档,系统会自动用gedit打开编辑文档,该编辑器跟我们熟悉的win文档编辑器非常像,这边就不细介绍了;除了双击打开,也可以通过命令打开文档进行编辑。

gedit [profile_name]

gedit文档编辑器非常方便,但是我们为什么还要学习终端编辑的方式呢,因为我们在开发过程中由于特殊情况无法运用gedit打开文档,例如远程链接,这时候就需要我们运用终端方式进行文档编辑。

(2)vi编辑

vi编辑器是所有Unix及Linux系统下标准的编辑器。基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  • 命令行模式(command mode)

  • 插入模式(Insert mode)

  • 底行模式(last line mode)

这边vi命令就不多介绍了,感兴趣的可以查看vi命令详解.

(3)vim编辑

vim是Linux非常强大的编辑器。 vim可以当作vi的升级版本,他可以用多种颜色的方式来显示一些特殊的信息。

通过上一博客安装的ubuntu18是没有预装vim的安装命令如下

sudo apt-get install vim

Vim的几种模式

  • 正常模式:可以使用快捷键命令,或按:输入命令行。
  • 插入模式:可以输入文本,在正常模式下,按i、a、o等都可以进入插入模式。
  • 可视模式:正常模式下按v可以进入可视模式, 在可视模式下,移动光标可以选择文本。按V进入可视行模式, 总是整行整行的选中。ctrl+v进入可视块模式。
  • 替换模式:正常模式下,按R进入。

vim指令系统比较庞大,各位感兴趣可以自行查阅vim 操作命令大全。后面博主也会出一期专门的博客进行简要的vim命令讲解。

二、基本命令

Linux系统的命令系统非常广阔,想要全部掌握还是有一定难度滴,这边我们就主要介绍一些我们在学习ROS过程中经常需要使用的命令。

#加中文为注释,并非指令结构内容

1.文件和目录

cd /home 				#进入 '/ home' 目录' 


cd ..					#返回上一级目录 
cd ../.. 				#返回上两级目录 
cd 						#进入个人的主目录 
cd ~user1 				#进入个人的主目录 
cd - 					#返回上次所在的目录 
pwd 					#显示工作路径 
ls 						#查看目录中的文件 
ls -F 					#查看目录中的文件 
ls -l 					#显示文件和目录的详细资料 
ls -a 					#显示隐藏文件 
ls *[0-9]* 				#显示包含数字的文件名和目录名 
tree 					#显示文件和目录由根目录开始的树形结构
lstree 					#显示文件和目录由根目录开始的树形结构
mkdir dir1 				#创建一个叫做 'dir1' 的目录' 
mkdir dir1 dir2 		#同时创建两个目录 
mkdir -p /tmp/dir1/dir2 #创建一个目录树 
rm -f file1 			#删除一个叫做 'file1' 的文件' 
rmdir dir1 				#删除一个叫做 'dir1' 的目录' 
rm -rf dir1				#删除一个叫做 'dir1' 的目录并同时删除其内容 
rm -rf dir1 dir2 		#同时删除两个目录及它们的内容 
mv dir1 new_dir 		#重命名/移动 一个目录 
cp file1 file2 			#复制一个文件 
cp dir/* . 				#复制一个目录下的所有文件到当前工作目录 
cp -a /tmp/dir1 . 		#复制一个目录到当前工作目录 
cp -a dir1 dir2 		#复制一个目录 
cp -r dir1 dir2 		#复制一个目录及子目录
ln -s file1 lnk1 		#创建一个指向文件或目录的软链接 
ln file1 lnk1 			#创建一个指向文件或目录的物理链接 

2.文件搜索

find / -name file1 		#从 '/' 开始进入根文件系统搜索文件和目录 
find / -user user1 		#搜索属于用户 'user1' 的文件和目录 
find /home/user1 -name \*.bin 		#在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件 

3.用户和群组

groupadd group_name 	#创建一个新用户组 
groupdel group_name 	#删除一个用户组 
groupmod -n new_group_name old_group_name 	#重命名一个用户组 
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 	#创建一个属于 "admin" 用户组的用户 
useradd user1 			#创建一个新用户 
userdel -r user1 		#删除一个用户 ( '-r' 排除主目录) 
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 	#修改用户属性 
passwd 					#修改口令 
passwd user1 			#修改一个用户的口令 (只允许root执行) 

4.文件的权限 - 使用 “+” 设置权限,使用 “-” 用于取消

ls -lh 					#显示权限 
ll	 					#显示权限 
chmod ugo+rwx directory1 	#设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限 
chmod 777 directory1 	#设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限 
chmod go-rwx directory1 	#删除群组(g)与其他人(o)对目录的读写执行权限 
chown user1 file1 		#改变一个文件的所有人属性 
chown -R user1 directory1 	#改变一个目录的所有人属性并同时改变改目录下所有文件的属性 
chgrp group1 file1 		#改变文件的群组 
chown user1:group1 file1 	#改变一个文件的所有人和群组属性 

5.打包和压缩文件

tar -cvf archive.tar file1 		#创建一个非压缩的 tarball 
tar -cvf archive.tar file1 file2 dir1 	#创建一个包含了 'file1', 'file2' 以及 'dir1'的档案文件 
tar -tf archive.tar 			#显示一个包中的内容 
tar -xvf archive.tar 			#释放一个包 
tar -xvf archive.tar -C /tmp 	#将压缩包释放到 /tmp目录下 
tar -cvfj archive.tar.bz2 dir1 	#创建一个bzip2格式的压缩包 
tar -jxvf archive.tar.bz2 		#解压一个bzip2格式的压缩包 
tar -cvfz archive.tar.gz dir1 	#创建一个gzip格式的压缩包 
tar -zxvf archive.tar.gz 		#解压一个gzip格式的压缩包 
zip file1.zip file1 			#创建一个zip格式的压缩包 
zip -r file1.zip file1 file2 dir1 	#将几个文件和目录同时压缩成一个zip格式的压缩包 
unzip file1.zip 				#解压一个zip格式压缩包 

6.DEB 包 (Debian, Ubuntu 以及类似系统)

dpkg -i package.deb 	#安装/更新一个 deb 包 
dpkg -r package_name 	#从系统删除一个 deb 包 
dpkg -l 				#显示系统中所有已经安装的 deb 包 
dpkg -l | grep httpd 	#显示所有名称中包含 "httpd" 字样的deb包 

7.APT 软件工具 (Debian, Ubuntu 以及类似系统)

apt-get install package_name 	#安装/更新一个 deb 包 
apt-cdrom install package_name 	#从光盘安装/更新一个 deb 包 
apt-get update 					#升级列表中的软件包 
apt-get upgrade 				#升级所有已安装的软件 
apt-get remove package_name 	#从系统删除一个deb包 
apt-get check 					#确认依赖的软件仓库正确 
apt-get clean 					#从下载的软件包中清理缓存 
apt-cache search searched-package 	#返回包含所要搜索字符串的软件包名称 

8.网络 - (以太网和WIFI无线)

ifconfig eth0 					#显示一个以太网卡的配置 
ifup eth0 						#启用一个 'eth0'网络设备 
ifdown eth0						#禁用一个 'eth0' 网络设备 
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 	#控制IP地址 
ifconfig eth0 promisc 			#设置 'eth0' 成混杂模式以嗅探数据包 (sniffing) 
dhclient eth0					#以dhcp模式启用 'eth0' 

总结

以上就是这一博客的内容,主要介绍了Linux的基本操作,包括更换源,软件安装等,除此还针对ROS学习讲解了Linux系统常用的基本命令。

ROS学习并非一朝一夕可以完成,接下来我也会坚持发表关于ROS学习的笔记,如有哪里不对的,也可以请各位指正。 祝大家变得更强!

猜你喜欢

转载自blog.csdn.net/qq_39502099/article/details/113357386