操作系统环境¶
约 1814 个字 1 行代码 预计阅读时间 6 分钟
树莓派中运行的操作系统是定制的 Raspberry Pi OS,它基于 Linux 发行版 Debian,专门为树莓派的硬件所优化。Linux 操作系统内核是 1991 年由芬兰学生 Linux Torvalds 首先公开发布的,它的发行遵循 GPL (GNU General Public License)协议,在 Internet 上不断被发展和完善。由于 Linux 的开放源代码的特性,很多优秀的程序员加入到 Linux 的开发行列,使得 Linux 的发展非常迅速,成为今天无论在服务器平台还是在嵌入式平台都非常具有竞争力的操作系统。
Linux 命令行简介¶
登录到树莓派操作系统中之后可以使用图形界面完成基本的文件操作和环境设置,但要更加灵活的使用 Linux 操作系统,或者需要通过字符协议远程登陆树莓派,就需要掌握 Linux 的常用字符命令。在图形界面下可以打开模拟终端获得命令行操作界面,这里列举了一些命令的功能(方括号中内容为命令参数),具体的使用方法还需要通过在线帮助或其它资料来熟悉。
1.文件操作
- 更改当前目录:
cd[dir]
- 创建目录:
mkdir[dir]
- 删除目录:
rmdir[dir]
- 列出当前目录文件:
ls
- 将 file1 复制到 file2:
cp file1 file2
- 删除文件:
rm[file]
- 显示文本文件内容:
more[file]
2.网络操作
- 查看 IP 地址:
ip addr
- 测试网络连通性:
ping [IP]
- 通过 ssh 协议复制文件:
scp
3.其它命令
- 显示磁盘占用情况:
df
- 显示当前日期和时间:
date
- 显示命令的说明信息:
man[command]
- 安装软件 soft:
apt-get install [soft]
- 退出当前会话:
exit
想熟悉命令行的使用就必须多尝试,充分理解命令的精确含义,许多命令都具有 “--help” 参数用来显示简单的帮助信息,或者使用 man
命令来查找手册。
Bash 使用技巧¶
在 Linux 系统中,响应用户输入指令的程序被称为 shell。比较常用的 shell 有 csh
、zsh
和 bash
。由于多数发行版的默认 shell 都是 bash,这里就简单介绍一下它的操作特点。
首先是 命令补全功能,它可以大大提高用户在命令行工作的效率。当输入一个比较长的命令的时候,用户可以只输入这个命令的开头几个字母,然后按 Tab 键。如果当前系统可以搜索到的命令中以这几个字母开头的只有一个,系统就会自动把这个命令补全;否则再次按 Tab 键可以显示出所有满足条件的命令,用户可以继续输入字母直到满足的命令只有一个的时候再按 Tab 键补全。
命令补全功能还适用于目录名和文件名的补全,在其他软件的辅助下还可以支持命令行参数的补全。例如当前目录中只有一个目录,用户可以如下输入将目录名补全。
另外一个功能是 命令历史记录,bash 会自动记录用户输入的所有命令,用 history
命令可以查看输入命令的历史。默认情况下,bash 会记录最近输入的 500 条命令。在命令提示符下,按 “上” 方向键可以调出以前输入的命令,也可以用 “下” 方向键回到之后输入的命令。使用 Ctrl+R 按键组合还可以对历史进行查找,可以根据接下来输入的内容在历史记录中寻找最佳的匹配。
编辑器使用¶
树莓派自带的 Python 编辑和调试器是 Thonny,大多数情况可以满足编程的要求,这里另外还要介绍的是 Linux 系统自带的 vi
编辑器。
vi
是所有 Linux 发行版都提供的一个文本编辑软件。但 vi 和 Windows 下的任何其他编辑器都不类似,初次接触很可能完全无法了解它的用法。但在某些特殊环境,如嵌入式系统中,也许 vi 就是唯一的选择。另外,vi 是所有 Linux 和 UNIX 都包括的命令,掌握了它的用法就可以在所有 Linux 系统中进行编辑了。
Vim
是 vi 的 “超集”,它提供更加丰富的功能,更加适合编程的使用。扩展的功能包括语法高亮、多级撤销、可视选择等。大多数 Linux 发行版提供的都是 Vim。Vim 的另一个扩展是 gvim
,它提供了图形化的工作前端,可以使用鼠标和操作菜单。执行 vi file_name
进入 vi 的界面。vi 是一个有 “模式” 的编辑器,它具有 “命令”、“命令行” 和 “编辑” 三种主要模式。刚执行的 vi 处于命令状态。按 I 键进入插入状态就可以进行文字编辑了。编辑完成后按 Esc 键则可以返回命令状态,在命令状态按 ++:++ 键进入命令行状态,在命令行状态输入 W+Q+Esc(write and quit)就可以存盘退出。
vi 的命令状态主要是通过按键完成特定的功能,例如:
x
:删除光标位置的字符dd
(连续按两次 d 键):是删除并保存当前行到缓冲区p
:将缓冲区中内容输出到光标位置。yy
:保存当前行到缓冲区u
:取消上一次操作h
,l
,j
,k
:左、右、下、上移动光标
上面提到的命令都要注意区分大小写,它们前面还可以加数字前缀,例如 20j
就是下移 20 行光标。
在命令状态按 :
进入命令行状态,输入的 :
在窗口的最低端显示,如下面的例子所示。删除这个输入的冒号可以退出命令行状态。这个状态用来输入比较复杂的命令,例如查找替换:
s
命令代表替换。第一个 /
号后面的是查找内容,第二个 /
后面是替换内容,第三个 /
后面是一个标志,g
代表替换本行的所有目标。
vi 的查找命令支持正则表达式,例如使用 *
号进行模式匹配,熟练掌握正则表达式可以完成复杂的编辑功能。
在命令行状态的一个重要功能就是帮助,使用
就可以查看上面介绍的 s
命令的说明。在查看帮助的时候,如果有其他条目的链接,则可以按 ++ctrl+]++ 组合键跳转过去,然后按 Ctrl+T 组合键返回。
到目前为止已经介绍过好多 “求助” 的方法了。主要目的是告诉大家如何利用 Linux 来自己帮助自己,这是加快掌握 Linux 的捷径。因为没有任何一本书可以包揽 Linux 的所有功能和用法,只有在遇到难题的时候学会如何自己解决,才能真正掌握 Linux 的精髓。