【睿尔曼-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 个软件包未被升级。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0 条评论

关于作者

周正

这家伙很懒,什么也没写!

选择发帖板块
选择发帖板块