【睿尔曼-RealMan】ROS开发-Linux基础
周正 2024-01-11
1. 常用Linux命令说明
Linux中多个场景需要用到命令行操作,故在此对一些常用的基础命令及ROS命令进行说明,以便进行后续使用、开发。由于Linux中命令较多,此处仅挑选一些开发中常用的命令做说明。
1.1 系统基础命令说明
1.1.1 基础文件和目录管理
1.1.1.1 cd指令
Linux cd命令用来切换工作目录至“目录名称”。 其中“目录名称”表示可为绝对路径或相对路径。若目录名称省略,则变换至使用者的主目录(也就是登录时所在的目录)。另外,“~”也表示为主目录的意思, “.” 则是表示目前所在的目录,“..”则表示目前目录位置的上一层目录。
语法说明
cd+选项+参数
“cd”指令实例
1.1.1.2 ls指令
Linux ls命令用来显示目标列表,在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。
语法表达
“ls”+选项+参数
“ls”选项说明
ls指令选项众多,此处列举为常用选项。
“-a”显示所有档案及目录;
“-C”多列显示输出结果(此为大写C);
“-n”以用户识别码和群组识别码替代其名称;
“-R”递归处理,将指定目录下的所有文件及子目录一并处理;
“-s”显示文件和目录的大小,以区块为单位;
“ls”参数说明
目录,指定要显示列表的目录,也可以是具体的文件。
“ls”指令实例
①显示当前文件夹下非隐藏文件及目录
realman@ubuntu:~/Desktop/Linux_foundation$ ls
realman realman_ROS
②显示当前目录下包括影藏文件在内的所有文件列表
realman@ubuntu:~/Desktop/Linux_foundation$ ls -a
. .. realman realman_ROS
③递归方式显示目录下的所有文件及子目录
realman@ubuntu:~/Desktop/Linux_foundation$ ls -R
.:
realman realman_ROS
./realman:
one
./realman/one:
Test_one
./realman/one/Test_one:
./realman_ROS:
④打印文件的UID和GID
realman@ubuntu:~/Desktop/Linux_foundation$ ls -n
总用量 8
drwxrwxr-x 3 1000 1000 4096 7月 31 19:24 realman
drwxrwxr-x 2 1000 1000 4096 7月 31 19:24 realman_ROS
1.1.1.3 sudo指令
sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性。sudo不是对shell的一个代替,它是面向每个命令的。
用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。
语法说明
sudo+选项+参数
“sudo”指令选项说明
“-h”显示指令帮助列表。
“-v”延长密码有效期限5分钟。
“-b”在后台执行指令。
“sudo”指令参数说明
指令:需要运行的指令和对应的参数。
“sudo”指令实例
①“sudo -h” 显示sudo指令的选项信息
realman@ubuntu:~/Desktop/Linux_foundation$ sudo -h
sudo - 以其他用户身份执行一条命令
usage: sudo -h | -K | -k | -V
usage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user]
usage: sudo -l [-AknS] [-g group] [-h host] [-p prompt] [-U user] [-u user]
[command]
usage: sudo [-AbEHknPS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p
prompt] [-T timeout] [-u user] [VAR=value] [-i|-s] [<command>]
usage: sudo -e [-AknS] [-r role] [-t type] [-C num] [-g group] [-h host] [-p
prompt] [-T timeout] [-u user] file ...
选项:
-A, --askpass 使用助手程序进行密码提示
-b, --background 在后台运行命令
-C, --close-from=num 关闭所有 >= num 的文件描述符
-E, --preserve-env 在执行命令时保留用户环境
--preserve-env=list preserve specific environment variables
-e, --edit 编辑文件而非执行命令
-g, --group=group 以指定的用户组或 ID 执行命令
-H, --set-home 将 HOME 变量设为目标用户的主目录。
-h, --help 显示帮助消息并退出
-h, --host=host 在主机上运行命令(如果插件支持)
-i, --login 以目标用户身份运行一个登录
shell;可同时指定一条命令
-K, --remove-timestamp 完全移除时间戳文件
-k, --reset-timestamp 无效的时间戳文件
-l, --list
列出用户权限或检查某个特定命令;对于长格式,使用两次
-n, --non-interactive 非交互模式,不提示
-P, --preserve-groups 保留组向量,而非设置为目标的组向量
-p, --prompt=prompt 使用指定的密码提示
-r, --role=role 以指定的角色创建 SELinux 安全环境
-S, --stdin 从标准输入读取密码
-s, --shell 以目标用户运行
shell;可同时指定一条命令
-t, --type=type 以指定的类型创建 SELinux 安全环境
-T, --command-timeout=timeout terminate command after the specified time limit
-U, --other-user=user 在列表模式中显示用户的权限
-u, --user=user 以指定用户或 ID
运行命令(或编辑文件)
-V, --version 显示版本信息并退出
-v, --validate 更新用户的时间戳而不执行命令
-- 停止处理命令行参数
②常用指令:sudo apt-get install 需下载的软件名称(此指令为切换root用户权限并下载软件)。
realman@ubuntu:~/Desktop/Linux_foundation$ sudo apt-get install python
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
python 已经是最新版 (2.7.15~rc1-1)。
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 353 个软件包未被升级。
撰写评论