树莓派入门必会的20个Linux命令
树莓派官方推荐的操作系统是Raspbian,这是一款免费的基于Debian Linux的操作系统,可以安装到所有版本的树莓派上。这就意味着如果不了解Linux的话,可能就无法随心所欲的捣鼓这个可人的尤物了。
Linux天生就是要使用CLI(command-line interface,命令行界面)操作的,因此学习树莓派就必须要会用Linux命令,本文介绍20个常用的命令(见下表),让你能够轻松的在幽深的黑色CLI里看到色彩斑斓的世界。
假设你已经完成树莓派操作系统的安装,打开系统自带的终端,显示内容如下:
默认的命令提示符如下:
pi@raspberrypi:~ $
表明你是在名为“raspberrypi”的主机上以用户“pi”的身份登录,并且正处在“pi”用户的主目录下面。你可以在后面输入各种Linux命令,然后按回车键即可执行。
当然,你也可以使用超级管理员“root”用户登录,命令提示符将如下所示:
root@raspberrypi:~ #
与“pi”用户不同的是,命令提示符为#,表明这是“root”用户,树莓派默认情况下并不会启用root账户,如果想以root身份执行命令,可以参照下面的sudo命令。
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
关联文章推荐:
如何给树莓派安装操作系统树莓派初次启动后的设置如何给树莓派搭建WEB开发运行环境之LAMP篇如何给树莓派搭建WEB开发运行环境之JAVA篇相关文章