慧捣鼓IT
首发于慧捣鼓IT
树莓派入门必会的20个Linux命令

树莓派入门必会的20个Linux命令

树莓派官方推荐的操作系统是Raspbian,这是一款免费的基于Debian Linux的操作系统,可以安装到所有版本的树莓派上。这就意味着如果不了解Linux的话,可能就无法随心所欲的捣鼓这个可人的尤物了。

Linux天生就是要使用CLI(command-line interface,命令行界面)操作的,因此学习树莓派就必须要会用Linux命令,本文介绍20个最常用的命令(见下表),让你能够轻松的在幽深的黑色CLI里看到色彩斑斓的世界。

树莓派入门必会的20个Linux命令

假设你已经完成树莓派操作系统的安装,打开系统自带的终端,显示内容如下:

树莓派Raspbian Linux终端

默认的命令提示符如下:

pi@raspberrypi:~ $

表明你是在名为“raspberrypi”的主机上以用户“pi”的身份登录,并且正处在“pi”用户的主目录下面。你可以在后面输入各种Linux命令,然后按回车键即可执行。

当然,你也可以使用超级管理员“root”用户登录,命令提示符将如下所示:

root@raspberrypi:~ #

与“pi”用户不同的是,命令提示符为#,表明这是“root”用户,树莓派默认情况下并不会启用root账户,如果想以root身份执行命令,可以参照下面的sudo命令。

ls 列出当前目录下的文件

ls命令

你可以尝试直接输入ls命令然后按回车,以及输入 ls -l命令再按回车之间有什么区别。显而易见,加上 -l 参数后目录下的文件以清单形式展现,你可以清晰的看到文件的类型、所属用户、创建时间等信息。其中第一列你会看到如下信息:

drwxr-xr-x

第一个字母 d 这表示该文件是一个目录(directory)文件,如果是普通文件第一个字母的位置将显示连字符“ - ”。

剩下9个字符以3个为一组,每一组各表示文件对于不同用户的权限,第一组 rwx 表示该文件所属的用户具有读(read)、写(write)和执行(execute)该文件的权限,第二组 r-x 表示同用户组的用户具有读和执行的权限(“ - ”表示不具备相关权限),第三组 r-x 表示其他用户具有读和执行的权限。

当然还有 ls -a列出包括隐藏文件在内的所有文件,Linux 的隐藏文件名以 “ . “开始。

有些Linux发行版会提供 ll 命令,该命令等价于 ls -l ,树莓派默认没有 ll 命令,不过可以通过修改用户主目录下的 .bashrc 文件,找到以下两行:

#alias ll='ls -l'
#alias la='ls -Al'

把前面的 # 删除,保存后重新进入终端即可使用 ll 命令。

pwd 输出当前目录

有时候你可能想知道当前在什么目录下,那么可以通过pwd命令打印出出来。pwd就是print working directory(打印当前工作目录)的首字母缩写。

比如,假设你正在如下目录中:

/home/pi/projects/rebot/bin

但终端仅仅显示:

pi@raspberrypi: /bin $

你通过终端显示信息只知道你在 bin 目录下,却不知道全部路径信息,这时候就需要pwd命令。

cd 改变目录

你可以 cd 到任何你想去的目录,只要你知道它的路径,这个路劲可以是绝对路径,也可以是相对路径。

假设你正在如下目录中:

/home/pi/projects/robot/bin/

你想去往 /home/pi/projects/ 目录,那么你即可以使用绝对路径:

$ cd /home/pi/projects

也可以使用相对路径:

$ cd ../../

其中 ../ 是指上一级目录,在这个例子中,bin目录往上两级就是projects目录。

如果robot目录下,还有一个lib目录和bin目录同级,那么你从bin目录去往lib目录就可以使用:

$ cd ../lib

也就是bin的上级目录下面的lib目录。

此外

输入 cd 命令可以直接回到pi用户的主目录 /home/pi/

输入 cd .. 命令可以回到当前目录的上一级目录

mkdir 新建目录

如果你要在当前目录下新建一个目录 temp,那么你可以使用:

$ mkdir temp

如果你想把这个temp新建到/home/pi/projects下面,那么你可以使用:

$ mkdir /home/pi/projects/temp

前提是projects这个目录必须存在,并且你对其拥有写权限。

rmdir 删除目录

如果你要把temp目录删除,可以使用:

$ rmdir temp

或者:

$ rmdir /home/pi/projects/temp

但这要求temp必须是个空空的目录,如果temp中还有其他内容,你可能需要使用:

$ rm -fr temp

系统会把temp及其里面的所有内容全部删除。

cat 显示或连接文件内容

你发现当前目录下有一个GirlsPhoneNum文件,你可能迫不及待的想看一看,那么你可以使用:

$ cat GirlsPhoneNum

文件的全部内容将会打印在终端。

如果你发现还有一个BoysPhoneNum文件,你想两个文件一起看,那么你可以使用:

$ cat GirlsPhoneNum BoysPhoneNum

是的,男孩和女孩们的手机号码你就都有了。

rm 删除文件

如果你觉得男孩的手机号码干扰你看更重要的东西,你可以把它删除:

$ rm BoysPhoneNum

这样你就算把回收站全倒出来也找不到它了。

mv 移动/重命名文件/目录

如果你不想删除男孩儿们的手机号,只是想把他们移动的别的地方去,比如移动到/home/pi/boys,那么你可以:

$ mv BoysPhoneNum /home/pi/boys

前提是boys这个目录必须要存在,如果不存在的话,你需要使用mkdir命令新建一个。

如果你担心女朋友看到你电脑里存了好多女孩的号码,你可以给它改个名字:

$ mv GirlsPhoneNum MyTeachersNum

cp 复制文件/目录

你可以吧女孩儿们的号码复制到妥当位置,以防被女友删除:

$ cp GirlsPhoneNum /home/pi/Study/Linux/RaspberryPi

如果你要复制整个目录到/home/pi下面:

$ cp -r GirlPhotos /home/pi

echo 显示在终端输入内容

你可以试试下面的命令会输出什么

$ echo Hello Raspberry Pi

date 读取系统日期/时间

终端下面并没有系统托盘可以让你看日期和时间,如果你想看时间的话,就要 date 一下。

grep 全面搜索正则表达式并打印

这是一个功能爆表的命令,它可以通过正则表达式搜索文件或目录,也可以在一些命令的输出内容里进行查找。它的用法几乎可以写一本书,不过我们目前只需要了解一些最简单的用法即可。

比如你想知道刚才那个女孩们的手机号码文件里,有没有你想的JingJing的号码,你可以:

$ grep JingJing GirlsPhoneNum

man 显示命令帮助手册

如果你不知道某个命令怎么用,或者你忘记了,你可以man一下:

$ man grep

输出的内容可能会让你崩溃,你可以用空格来翻页,回车看下一行,q退出。

sudo 以root权限执行

树莓派默认使用”pi“用户登录,并且不会启用”root“用户,可能也印证了那句”只有菜鸟才以root身份登录“的Linux极客语录。

那么当你需要使用root身份来执行一些任务的时候,比如你需要把GirlsPhoneNum文件藏在/lib目录下,因为你女朋友无论如何也不会想到去看/lib这个存放库文件的目录,而往/lib目录里写文件一般都是需要root权限的,那么你可以使用sudo:

$ sudo cp GirlsPhoneNum /lib

然后系统会提示你输入当前用户也就是pi用户的密码,输入密码的时候终端里是不显示任何内容的,连星星***也不显示,输入之后按回车即可。

chmod 改变文件读写权限

刚才介绍ls命令的时候,你大致了解了一个文件的权限可以用下面的形式来表示:

-rwxrwxrwx

如果需要对权限进行修改,就要用到chmod命令,这个命令可以使用直接方式和二进制方式两种来修改权限。

直接方式

u代表文件所属用户
g代表与文件所属用户同组的用户
o代表其他所有用户

比如一个文件的权限为:

-rwxrwxrwx

你希望其他所有用户仅具有读的权限,可以用命令:

$ chmod o-wx filename

这个文件的权限就变成了:

-rwxrwxr--

如果你想恢复原来的全部可读可写和可执行权限,就使用命令:

$ chmod o+wx filename

数值方式

我更喜欢数值方式,它为每一种权限分配了一个数值:

r = 4
w = 2
x = 1

将每一组所有权限的数值加起来就可以。比如744,代表文件所属用户具有rwx权限,同组用户和其他所有用户只具有r权限。如果你想将一个文件的权限设置为:

-rwxr-xr-x

那么可以使用命令:

$ chmod 755 filename

也许你有点晕,慢慢来,习惯就好。

./program 运行program程序

如果你想运行某个程序(可执行文件),那么直接在终端里输入它的路径就可以,如果你要执行当前目录下的program可执行文件,你需要使用:

$ ./program

apt-get 安装/删除软件包

那么树莓派下面怎么安装软件呢?或者卸载软件?

一般来讲你并不需要先去某个网站下载,然后安装,你可以直接使用包管理工具apt-get,比如你要安装vim编辑器,你可以:

$ sudo apt-get install vim

如果你想删除它,也很简单:

$ sudo apt-get remove vim

apt-get需要以root权限运行,所以在前面加上sudo。

如果你想对系统和已安装的软件包进行升级:

$ sudo apt-get update
$ sudo apt-get upgrade

有些Linux发行版使用yum或者dnf来管理软件包,不过这些和树莓派的Raspbian关系不大。

你也许还听说过用什么make之类的命令编译安装,这种操作可以等你把眼下的东西玩腻了再去搞。

exit 退出

当你想退出终端,直接输入 exit 即可,表忘了输完按回车键。

reboot 重新启动

如果你想重新启动系统的话:

$ sudo reboot

shutdown关机

如果你想立即关闭系统:

$ sudo shutdown -h now


关联文章推荐:

如何给树莓派安装操作系统zhuanlan.zhihu.com图标树莓派初次启动后的设置zhuanlan.zhihu.com图标如何给树莓派搭建WEB开发运行环境之LAMP篇zhuanlan.zhihu.com图标如何给树莓派搭建WEB开发运行环境之JAVA篇zhuanlan.zhihu.com图标

编辑于 2019-04-03

文章被以下专栏收录