在这一章中,我们将看看我们项目的硬件方面。我们将讨论硬件和部件的所有选项;然后我们会把所有东西都组装好。该项目的最大部分是安装基本的操作系统,并通过Raspbian的初始设置阶段,即RaspberryPi操作系统。
如果你曾经组装过台式电脑,这基本上是相同的过程,但在Pi上一切都有所不同。如果你以前从未“制造”过电脑,那么你将会看到有趣的一章;一旦你得到了所有的部分,剩下的就是按照说明去做了。
很明显为什么你需要硬件;没有物理部件就没有计算机。但是为什么我们需要安装操作系统呢?在Mac或Windows电脑上通常不需要这样做,那么为什么Pi需要这样做呢?最简单的理由是自由和选择。
如果你有一台Mac电脑,你将运行MacOS(以前的OSX)。如果你有一台消费者风格的个人电脑,它将配备Windows10。你不需要安装任何东西;只要把它们插上电源,它们就会工作,但是你没有选择的余地。你通常不会在Mac上运行Windows,也不会在PC上运行MacOS。别无选择。
另一方面,RaspberryPi运行的是Linux操作系统,而不是MacOS或Windows。Linux是一个免费的操作系统,由志愿者免费创建和维护。数以百万计的志愿者在不断改进、调试和不知疲倦地工作,这样就有了MacOS和Windows的替代品。
像任何大型团队一样,当你有那么多开发人员时,很难让每个人都同意什么是最好的,所以有许多不同类型的Linux。这些不同的味道被称为分布。每一个本质上都是一样的,这就是为什么他们是Linux但操作系统的许多方面都是可选的,比如桌面是什么样子,设置屏幕如何工作,包括哪些应用,默认的网络浏览器是什么,等等。大约有十几个不同的Linux发行版可以在RaspberryPi上运行,我们将只重点介绍其中的一个;但在任何时候,设置和使用不同的版本都很容易,而且令人惊讶的是,这非常有趣——你可能想尝试几个版本,看看哪一个最像你在计算机中想要的。
我说过我们会尽量少来,我不是开玩笑。这里没有任何技巧或隐性成本。没有每月付费的订阅服务,不需要额外的硬件;但是大多数常见的PC硬件配件,像硬盘驱动器、闪存驱动器、花式鼠标、键盘和蓝牙设备,都可以随意使用,所以你不必局限于基本的。
这里有一个你可能还没有的东西的快速“购物清单”。所有价格均以美元为单位:
以下是需要考虑的其他事项:
这里有一些你可能已经需要的东西:
随着2019年6月树莓Pimodel4的推出,树莓Pi基金会也为Pi推出了官方键盘和鼠标。这些都是吸引人的颜色协调,以配合官方的Pi案件,键盘上有一个“树莓按钮”在通常的“系统键位置”,但除此之外,他们不是必需的。您可以使用任何USB鼠标或键盘,它们可以通过USB有线连接,也可以通过蓝牙连接。除此之外,您可以使用与旧电脑相同的键盘和鼠标。
任何标准的显示器都可以工作,但你需要一根带微型HDMI插头的电缆来连接你的model4Pi,或者一个全尺寸HDMI端口来插入任何以前的型号。如果您使用的是RaspberryPimodel4,您还可以选择同时使用两个显示器。显然,你需要两个显示器和两根微型HDMI电缆来利用双显示器功能。
你将需要一个微型SD卡和适配器,以便将该卡插入电脑的任何插槽中。
有许多Linux发行版或“品牌”很容易获得。最受欢迎的两个是Raspbian和UbuntuMATE。这两者的侧重点不同:Raspbian是RaspberryPi的“官方”操作系统,而UbuntuMATE是一个更重的面向桌面的操作系统。Raspbian速度更快,效率更高,而MATE更容易使用,包含更多内置软件,但也更慢。
截至本文撰写时,UbuntuMATE的当前版本是18.04,于2018年4月发布。这听起来很“老”,但是Ubuntu有一个更新系统,他们提供了一个叫做LTS的东西,或者说是他们操作系统的“长期支持”版本。他们保证支持LTS版本长达4年。这样做的缺点是他们每两年才发布一个新版本。所以直到2020年4月才会有新的LTS版本。Ubuntu确实每6个月提供一次常规操作系统的升级,但他们不会为RaspberryPi版本提供升级。所以我们都暂时卡在2018年了。
另一方面,Raspbian在积累了足够多的变化时会不定期地发布。截至本文撰写时的最新版本名为“Buster”(2019年6月)。如果你想要最先进的,最“官方”版本的树莓派操作系统,这是一个使用。
我们需要的下一个软件是一个特殊的实用程序,用于将操作系统复制到SD卡上并使其可引导。我发现最简单的应用是balenaEtcher,通常简称为Etcher。有一个版本适用于Windows、Mac和Linux所以不管你从哪里来,他们都会为你制作一个版本。
一旦具备上述要素,创建可引导SD卡的过程就很简单。下载一个操作系统文件,UbuntuMATE或者Raspbian。无论你选择哪个,你最终都会下载一个大文件。
一旦完成,启动蚀刻机,它应该看起来像图1-1。
图1-1
选择源文件和目标驱动器的balenaEtcher
有三个按钮/图标。点按左边的按钮,它将允许您选取一个磁盘映像。这是你刚下载完的Raspbian或者UbuntuMATE文件。
将SD卡插入计算机。您可能需要使用适配器、加密狗或集线器来使其适合。一旦电脑识别出该卡,单击中间的图标选择该卡。绝对确保不要选择错误的磁盘,因为如果你不小心,你可以删除您的计算机的硬盘驱动器!
选择完操作系统文件和目标驱动器后,单击第三个图标“闪存!”这将开始格式化SD卡并将操作系统复制到SD卡上的过程。根据各种因素,此过程可能需要5-10分钟,如图1-2所示。
图1-2
蚀刻机林荫道通过泛水
一旦这个过程完成,Etcher会告诉你它已经成功地刷新了卡,否则它会给你一个错误信息。如果有错误,遵循Etcher的建议并找出原因。假设它工作了,你可以弹出卡,并着手组装你的Pi。
以下列表概述了必需和可选的组件零件:
假设你已经购买或搜罗了所有必要的部件,将RaspberryPi组装成一台台式电脑是非常容易的,因为所有电缆的走向应该是显而易见的。
此时,你的监视器将显示一个彩色的“测试模式;然后清空屏幕,在屏幕顶部显示一些树莓图标。在这之后,一堆状态信息和文本可能会在屏幕上滚动。
假设您已经通过了测试模式和“raspberries”,您将到达Raspbian欢迎屏幕,如图1-3所示。
图1-3
拉斯边的欢迎屏幕
点击“下一步”,我们将得到一个本地化的屏幕,看起来很像图1-4。
图1-4
本地化设置
现在该修改默认用户的密码了,如图1-5所示。如果你不在这里修改它,默认的是用户“pi”,这个用户的密码是“raspberry”因为这是每个默认Raspbian安装的相同用户名和密码,所以修改密码是一个非常好的主意。这个用户拥有超级用户权限,可以删除和修改任何东西,所以密码要让人难以猜到。
图1-5
设置root密码
稍后,我们将研究如何创建一个单独的、更加个性化的用户帐户。如果您有Linux经验,Pi用户是一个根级别的帐户,所以在日常工作中使用这个帐户并不是一个好主意。
下一个屏幕如图1-6所示,与您的显示器和屏幕分辨率有关。到目前为止,屏幕都是低分辨率的,非常简单,因为所有东西都是尽可能低的分辨率。如果Raspbian桌面当前充满了你的整个屏幕,那么不要勾选这个框。如果边缘有黑色条或边框,那么单击该框,Raspbian会相应地调整您的设置。请注意,在安装完成和系统重新启动之前,您不会看到任何事情发生。
图1-6
你需要调整屏幕分辨率吗?
现在,在图1-7中,是时候设置你的Wi-Fi网络了。如果您打算将以太网用于您的网络,您可以点按“跳过”否则,在这里找到你的网络。请注意,Pi型号3B+具有2.4GHz和5.0GHz两种能力,而常规的非plus型号3B和所有旧型号只能访问2.4GHz网络。单击您要连接的网络,然后在以下屏幕上输入该网络的密码:
图1-7
设置Wi-Fi密码
在这之后,我们基本上完成了安装。下一个也是最后一个屏幕,类似于图1-8,将让我们有机会下载SD卡上没有发布的软件的更新和补丁。如果你很急,你可以跳过这一步,但是拥有一个完全更新的系统总是最好的。
图1-8
开始更新吧!
如果你选择让它来更新,你最终会得到一个对话框告诉你你的“系统是最新的。”此时,您需要重新启动系统,一切都应该准备好了。
在这个阶段探索菜单和试用几个应用是安全的。图1-9显示了LibreOfficeWriter、文件管理器应用和Chromium浏览器的截图,它们都已经安装好了。你能在菜单上找到它们吗?
左上角的树莓图标实际上是Raspbian版本的菜单系统“开始”按钮。
图1-9
默认情况下会安装LibreOffice、文件浏览器和Chromium
这一章为这本书的其余部分奠定了基础。我们购买并组装了所有部件,然后下载并创建了引导介质。然后我们浏览了设置菜单,最终得到了一台基本但仍能正常工作的小电脑。你可以随意在菜单里摸索,运行应用,看看它能做什么。如果你的需求很简单,比如只是浏览网页和收发电子邮件,你可能已经在电脑中拥有了你所需要的一切。更有可能的是,你需要安装一堆应用来做你想用RPi做的事情。如果你想把你的RaspberryPi作为一台普通的台式电脑使用,那么你就可以开始了。尽管如此,除了坐在显示器前,还有其他方法可以使用电脑,我们将在下一章看到。
在这一章中,我们将会看到各种访问Pi计算机的方法,本地访问,通过终端远程访问,或者使用远程桌面访问。最后,我们将看看添加新的用户帐户和设置外部硬盘驱动器和存储设备。
如果你在默认安装后打开RaspberryPi,你会看到Raspbian桌面。它看起来有点像MacOS或者Windows桌面,所以你应该会觉得用起来有些直观。我们将在第三章详细讨论桌面的使用。
如果你要做的只是将Pi作为桌面计算机使用,这没问题,但是这本书的主要焦点之一是如何使用命令行来完成工作。在学习命令行之前,您必须能够实际使用一个命令行。有三种方法可以做到这一点,每种方法的复杂性和选择都在增加。
您可以简单地从图形用户界面(GUI)桌面打开终端窗口。在屏幕顶部的菜单栏上,有一个灰色的终端图标。在终端的覆盆子配件菜单中也有一个快捷方式。点击其中任何一个,你会看到一个熟悉的黑色终端,里面有一些文本。这是快速和容易的,特别是如果你在桌面上做你的大部分工作。
如果你不想使用桌面,并且你想从命令行做所有你的工作,老派,你可以设置Raspbian简单地引导到命令行,就像在GUI接管之前的旧时代一样。有两种方法可以做到这一点。
首先,在树莓偏好菜单下有一个“树莓Pi配置”选项这个对话框有很多有用的东西可以修改,但是我们现在感兴趣的是第三行,“Boot:”
您可以选择“引导至桌面”或“引导至CLI”CLI是c命令-linei接口。单击此选项,然后选择确定。下次重新启动时,您将在命令提示符下启动。
图2-1
Raspi-config的引导选择
您将需要第一个选项,“选择是否引导至桌面。”
您将看到四个选项:
选择选项1,然后选择“完成”它会问你是否想现在重启。选择“是”Pi重新启动,您将不再看到桌面,只看到带有提示的黑色终端屏幕。在我的屏幕上,我只看到
最终,您可能想要重新打开桌面。如果是这样,再次运行sudoraspi-config并选择选项3将事情恢复原样。
您也可以使用其他计算机或设备从网络上的其他地方访问RaspberryPi上的shell。要设置这个,像以前一样运行sudoraspi-config,这一次,选择“5个接口选项”,然后选择该菜单下的第二个选项“SSH”这将启用(或禁用)使用SSH(S安全Shell)协议远程命令行访问您的Pi。
完成后,退出raspi-config并在终端上键入ifconfig。您将看到类似于以下内容的内容:
这是你所需要的。
转到其他装有终端应用的电脑或设备,然后键入
图2-2
从另一台电脑访问RaspberryPi,在本例中是iPad
是的,我正在用一台1000美元的iPadPro访问一台35美元的电脑。疯狂?大概吧!
从终端或命令行键入
sudoraspi-config像以前一样,这一次,选择“5接口选项”和菜单下的第三个选项,“VNC”这将启用(或禁用)通过VNC(VIvirtualNnetworkCcomputer)协议对您的Pi进行远程桌面访问。如果您在上一节中没有打开SSH,那么您现在也需要这样做。
在终端窗口或命令行中,键入以下命令:
Tightvncserver将要求您为VNC创建一个密码。此密码仅用于VNC连接,它可以与您的常规密码相同或不同。这取决于你。然后,它会询问您是否要创建一个只读密码。你可以回答不,因为我们不需要那个。接下来,您准备启动VNC服务器:
vncserver:1-geometry1920x1080-depth24刚开始,就用这一行,什么都不改。稍后,您可以选择修改该行以获得更多定制的结果。:1参数将其设置为1号屏幕。您可以设置多个屏幕并在它们之间切换,或者在客户端电脑上的单独窗口中运行它们。如果你不打算这样做,就把它留在1。-geometry1920x1080参数是我们“虚拟”桌面的屏幕分辨率,而-depth24设置调色板,使其看起来不错。
同样,这些都可以被实验和修改而不会造成伤害,但是现在先从这些数字开始。
最后,从终端运行ifconfig来获取Pi的IP地址,就像我们在上一节中所做的那样。
下载并安装后,运行RealVNCViewer并接受默认值。在顶部的栏中,输入Pi的IP号,后跟一个冒号,然后输入您想要连接到的屏幕的号,例如,192.168.0.12:1连接到IP地址为192.168.0.12的计算机上的1号屏幕。
将出现关于未加密连接的警告。只要您是在本地网络内连接,这是没问题的。如果您尝试通过互联网进行连接,您可能需要研究一种加密的连接方法。你会被要求输入密码,之后,你会看到你的RaspberryPi桌面出现在你的屏幕上。按照RealVNCViewer提供的任何屏幕教程进行操作——即使您使用的是非鼠标设备,如iPad,也有右键单击、双击、滚动等方法。
访问GUI桌面的VNC和访问命令行的SSH是使用RaspberryPi的强大工具。在这个阶段,如果您想要断开Pi的键盘、鼠标和监视器,您可以选择“无头”使用它。因为它以无线方式连接到您的网络,所以现在您唯一需要插入的电缆就是电源(如果您需要的话,还有以太网)。当然,这都是可选的。通过本地使用您的Pi而不是通过VNC,您将获得更快的桌面性能,尽管SSH和命令行的速度差异可以忽略不计。
使用adduser命令向您的系统添加新用户:
sudoadduserusername请确保将用户名替换为您想要创建的用户。
系统将提示您输入新用户的密码。强烈建议使用强密码!
EnternewUNIXpassword:RetypenewUNIXpassword:passwd:passwordupdatedsuccessfully按照提示设置新用户的信息。如果您愿意,可以接受默认值,将所有这些信息留空:
ChangingtheuserinformationforusernameEnterthenewvalue,orpressEnterforthedefaultFullName:RoomNumber:WorkPhone:HomePhone:Other:IstheinformationcorrectY/n现在您有了一个标准的Linux用户帐户,有了自己的主目录,以及默认为Linux用户安装的所有东西。该用户不能安装或删除软件,也不能执行其他有安全限制的任务。这是出于安全和保障的原因;你不想能够意外删除重要的系统文件或应用。
为了允许这个用户做那些受限的事情,用户需要被添加到“sudo组”
使用usermod命令将用户添加到sudo组:
sudousermod-aGsudousername默认情况下,sudo组的成员拥有sudo权限。
使用su命令(切换用户)切换到新的用户帐号:
Su–username作为新用户,通过尝试更新Linux存储库来验证您可以使用sudo:
sudoaptupdate如果有涉及“权限被拒绝”的消息,请返回并重试。如果没有消息,那么一切正常。
现在,任何时候您想要使用超级用户权限运行命令,只需在您想要运行的命令前面加上“sudo”:
sudocommand_to_run例如,您可以列出/root目录的内容,通常只有root用户可以访问该目录:
sudols-al/root首次在会话中使用sudo时,系统会提示您输入用户帐户的密码。
到目前为止,我们已经从小小的SD卡启动并运行了我们的操作系统。SD卡的问题是速度慢,而且不够可靠。我已经经历了几个简单地停止工作。另一方面,我知道有些人会相信它们,所以你的里程数可能会有所不同,但我更喜欢将重要数据存储在真正的硬盘上。一旦硬盘设置好了,如果我们愿意,我们甚至可以从它启动,把SD卡留在灰尘里!
另一个考虑是USB控制器使用的接口与以太网控制器使用的接口是共享的。这意味着通过USB端口的大量I/O会降低网络访问速度,反之亦然。没有办法准确预测这会对速度产生多大影响,但是是有影响的。
也就是说,频繁访问磁盘的普通应用应该运行得更快。无论速度如何受到影响,旋转硬盘和固态硬盘都将是比容易损坏的SD卡更安全的存储重要数据的地方。
第一步是决定你是否希望能够从硬盘启动,或者你只是想把它作为一个数据驱动器。如果你想从硬盘启动,那么继续这里;如果没有,您可以跳到下一部分。
请注意,此过程需要在硬盘上全新安装您的RaspberryPi操作系统。硬盘上当前的内容将被删除。
在撰写本文时,RaspberryPimodel4已经推出了大约一个月。到目前为止,Pimodel4不能从硬盘启动;他们必须从SD卡启动。这一限制预计将在未来的更新中很快得到纠正,但截至2019年秋季,这是一个有待解决的问题。
这个过程可以使用旧式旋转硬盘或SSD技术来完成,甚至USB闪存驱动器也是一个选项。小心使用通过USB供电的硬盘驱动器——Pi是一种非常低功耗的设备,它可能无法像计算机一样处理对驱动器的供电。为了获得最佳效果,请使用外部供电的硬盘,即带有交流适配器或“壁式电源插座”的硬盘我还发现,这个过程在很大程度上取决于外部驱动器的设计——我已经尝试了几种根本不允许启动的驱动器,但它们对于数据存储来说都很好。
如果你有一个树莓Pi模型3B+,那么你可以删除SD卡,打开电源,和Pi应该启动了。你完蛋了!
如果你有一个树莓派2型或3B(不是3B+或4),那么你有一些额外的步骤:
请注意,这是树莓Pi的一个相对较新的功能,它并不总是适用于每个外部驱动器。如果你打算为你的Pi购买一个新的硬盘,做一点网上调查,看看具体的型号是否能正常工作。
令人惊讶的是,制作启动盘比空白驱动器更容易,因为Etcher为我们做了所有的工作。准备外部数据驱动器需要更多的工作。本节将以硬盘驱动器结尾,当您启动Pi时,它会自动挂载,并可用于您的数据文件和可选的/home目录。如果您已经有一个Linux格式的(即ext4)驱动器,并且上面已经有重要数据,您希望将它用作数据驱动器,您可以跳到步骤15。如果您有一个空白的驱动器,或者想要重新分配一个已经有“垃圾”的驱动器,那么就从这里开始:
lost+found.test.txt丢失+找到是一直自动生成的东西,但是test.txt是你刚刚用touch命令创建的文件。如果您看到它,那么您应该能够在新驱动器中保存、复制、删除和操作文件。
如果您计划只使用Raspbian桌面,那么这一部分是不必要的,因为桌面会自动安装任何插入的硬盘驱动器。另一方面,如果您计划直接引导到命令行,那么您将需要手动设置系统以自动安装外部驱动器。无论哪种方式,将驱动器设置为自动安装都没有坏处:
PARTUUID编号肯定会与这些不同,但是文件应该与这些非常相似。将光标移动到文件的末尾,并添加
/dev/sda1/mydiskext4defaults,nofail00将/dev/sda1和/mydisk替换成你所使用的任何东西。使用Ctrl-o保存,然后使用Ctrl-x退出Nano。重新启动后,无论是在命令行上还是在桌面上,每次启动Pi时,您都应该可以自动使用新的硬盘。
Linux中的大多数操作都是对您自己的数据文件执行操作,这些文件几乎总是存储在磁盘上的/home目录下。默认情况下,安装操作系统时会在SD卡上创建/home,创建用户时会在其下创建每个用户自己的主目录。这个系统的问题是,如果你是从SD卡启动,你可能不想把所有的数据文件保存在SD卡上。可能正好相反,因为这就是你安装外置硬盘的原因。幸运的是,有一个简单的程序可以让你将你的整个/家结构移动到一个外部驱动器上。
您需要拥有root权限才能完成所有这些操作。我们将使用sudo来赋予我们需要的特权。通过在命令前面添加sudo,我们以超级用户的身份运行该命令(sudo="超级用户DO__")。使用数独时,你需要格外小心,因为你可以删除任何东西,或者因为一个打字错误而导致无穷无尽的问题。
请注意,以下内容应全部作为一行输入。没有空间展示它的完整:
sudoecho"/dev/sda1/homeext4defaults,noatime,nodiratime00">>/etc/fstab这改变了告诉操作系统如何处理硬盘驱动器的/etc/fstab文件,以支持新的驱动器。
同样,您应该用您的驱动器和分区信息替换/dev/sda1。
现在我们可以通过挂载/home来测试它:
sudomount/home如果这不起作用,请返回并回顾您的步骤。
确认一切正常并已复制完毕,并且不再需要旧的主目录后,您可以将其从SD卡中删除:
sudorm-fr/oldhome仅此而已。这需要很多步骤,但现在你所有的工作都将永久安全地存储在你的硬盘上,而不是SD卡上。
至此,您已经为安装好您的RaspberryPi计算机做了大量工作。您已经输入了Wi-Fi密码,配置了一个外部驱动器,并且可能已经将您的个人目录移到了那个硬盘上。如果你能更进一步,让你的系统从硬盘启动,你的系统应该和其他电脑一样安全可靠。
不幸的是,对于许多人来说,从硬盘启动并不是一个选项——许多驱动器仍然不支持它。在这种情况下,您仍然需要继续从SD卡启动系统,但至少您可以将重要数据保存在外置硬盘上。这不是一个完美的解决方案,但非常可行。在这种情况下,弱点仍然是SD卡——它们往往会不时损坏。偶尔备份一下SD卡是个不错的主意,sd卡中包含了你的操作系统以及所有的应用和配置数据。这样,如果有什么东西损坏了卡,你可以直接恢复你的配置设置和系统,因为你的个人数据将存储在硬盘上,不会丢失任何重要的东西。
为了备份SD卡,你将再次需要另一台计算机,以及你可能需要将SD卡插入其中的任何适配器。
使用以下命令关闭您的RaspberryPi:
sudoshutdown当一切停止时,关掉电源。接下来,取出SD卡,并将其移动到您的计算机上进行后续步骤。
从苹果电脑:
有一天,如果你需要恢复卡:
从窗口:
如果在某个时候您需要从备份中恢复SD卡,只需运行Win32DiskImager,选择备份文件和SD卡驱动器号,并选择“写入”而不是前面步骤中的“读取”,以反向执行该过程。
现在,您面前已经有了一台完全正常工作的计算机,它运行的是完整版本的RaspbianLinux。你可以让它引导到桌面或命令行,如果你愿意,甚至可以把文件保存在外部驱动器上。
在下一章中,我们将看看RaspbianGUI桌面有什么特别之处,以及如何按照我们想要的方式定制和配置它。之后,我们将开始安装应用!
现在我们已经设置好了所有的硬件,是时候看看软件了。一旦你完成了所有的系统设置屏幕,你会看到一个空白的桌面环境,如图3-1所示。
图3-1
拉斯边桌面
有几个重要部分需要注意。屏幕上方是菜单栏,左右各有一组图标。树莓旁边的三个图标(见图3-2)分别是Chromium网络浏览器(地球仪图标)、文件管理器(文件夹图标)和终端(命令提示符图标)。如果你不记得这些是什么,你可以将鼠标悬停在它们上面,小的“工具提示”就会出现。
图3-2
左上角的图标区域
树莓图标下方是垃圾桶图标,如果您插入了外部硬盘,这里应该会出现一个或多个硬盘图标。
在屏幕的右上角,如图3-3所示,是硬件控制器按钮。
图3-3
右上角的图标区域
这些按钮允许您控制蓝牙(蓝牙标志)、Wi-Fi和以太网(上/下箭头)以及音量(扬声器图标)。
旁边是一个简单的仪表,显示CPU容量的使用量(百分比),后面是一个时钟/日历,最后您会发现一个“弹出按钮图标”,您可以使用它来弹出介质,如闪存驱动器和其他可移动介质。
点击左上方的树莓图标可以查看已安装应用的列表。旁边有箭头的菜单选项有子菜单,您可以浏览。例如,单击树莓图标,然后向下移动鼠标,并将鼠标悬停在“首选项”的选项上;你会得到一个涉及定制界面的应用列表,如图3-4所示。
图3-4
首选项菜单选项
列表中的最后一项“主题和外观设置”值得仔细查看。该屏幕允许一些非常精细的界面选项。你可以改变桌面的字体,图标的样式,甚至所有对话框的外观。例如,如果你在“Widgets”选项卡下选择“Adwaita-dark”主题,你就有效地将桌面置于黑暗模式,如图3-5所示。
图3-5
adwaita-窗口小部件的深色主题
在首选项桌面首选项下,您可以更改菜单栏的颜色;在“桌面”标签下,你可以改变背景图片,或者如果你不想要背景照片,你可以选择一个简单的单色背景。
总的来说,你会发现在Raspbian桌面上工作很像在Windows或Mac上工作。右键单击鼠标或双指触控板通常会弹出某种上下文菜单,可以在桌面上拖动项目,剪切和粘贴选项的工作方式与在其他系统上一样。
对于大多数现代操作系统,在关闭计算机之前,您必须经历一个“关机过程”,Pi也不例外。当您准备关闭(或重启)您的RaspberryPi时,您可以从桌面或命令行执行此操作。
在GUI中,单击树莓图标,下拉菜单上的最后一项是“关闭”您将看到一个对话框,其中有三个选项:关机、重启和取消。
从命令行,您可以简单地输入
sudoshutdown或者
sudoreboot文件管理器一个需要讨论的系统应用是文件管理器。点击菜单栏上的文件夹图标即可启动该应用。这将打开一个看起来非常像Windows的文件浏览器或Mac的Finder的应用。见图3-6。
图3-6
文件管理应用
系统文件结构显示在左窗格中,而各种文件夹和文件显示在右窗格中。顶部是菜单栏。在“文件结构”窗格中,您可以通过单击文件夹图标旁边的加号或减号或双击它们来展开或折叠文件夹。
在Raspbian上安装软件有三种主要方式:从源代码编译,从Ubuntu库下载,或者从命令行安装。
这是最难的方法,除非你知道自己在做什么,否则我不会走这条路,除非你想要的软件有非常明确的构建应用的说明。大多数Raspbian应用都是开源软件,这意味着你可以下载并阅读制作该软件的编程代码。
一些仍在开发中的应用只提供这种源代码,代码必须经过编译才能运行。可用的库、工具和语言涉及许多变量;所以,除非你真的必须构建应用,否则就寻找一种更简单的方法。
知道从源代码构建软件有多难,组装Raspbian的人创建了一个应用,它可以索引和列出数百个随时可用的应用和工具,就像Raspbian版本的其他操作系统的应用商店一样。这个应用可以在拉斯扁偏好添加/删除软件下找到,可以在图3-7中看到。
图3-7
添加/删除软件工具
您可以在左侧面板中浏览类别,然后在右侧面板中滚动浏览应用列表。如果您知道要安装的特定名称,请在搜索框中键入它。如果您找到想要尝试的应用,请选择它并单击确定。过了一会儿,应用应该已经下载并安装好了。安装应用后,它会出现在此列表中,旁边会有一个勾号。如果您取消选中该框并单击“应用,它将被卸载。放轻松!
更好的是,该工具允许您轻松查找并安装已安装应用的更新和补丁。单击添加/删除软件应用上的选项菜单。第一个选项是“检查更新”点击它,你会看到类似图3-8的东西。
图3-8
可用更新窗口
很明显,我有两个应用需要更新。点按“安装更新”,他们将为您下载并安装更新。
这种方法有两个问题。首先,没有太多关于每样东西是什么的描述,所以除非你心里有一个特定的应用或工具,否则你可能永远也找不到它。第二,这个工具不能远程工作。您可以在VNC运行添加/删除软件工具,但是软件不会安装。这可能是一个安全特性,也可能是一个错误,但它不会工作。
我们刚刚描述的添加/删除软件工具确实很容易使用,但你可能很快就会发现,应用的选择仍然有些有限。那里有很多好东西,我强烈建议浏览和探索这些应用,但是还有大量非常强大的应用没有包括在这个列表中。我发现命令行是安装我想要的任何东西的最简单的方法。这一点也不复杂,但是有一个要求是你必须事先知道你想要的包的名字。这需要一些阅读或互联网研究,但是一旦你知道你想要什么,就很容易得到。
首先,启动一个终端窗口。然后,键入以下几行:
sudoaptupdatesudoaptinstallpackagename第一行更新所有的存储库。这些在线存储库索引了所有可用的应用和工具,以及保存它们的安装文件的互联网位置。它们随着新版本和新工具的加入而不断变化,所以我总是先运行这个更新命令,只是为了确保找到最新的版本。
在第二行中,sudo再次是赋予您超级用户权限的命令,这是安装软件所必需的。Apt是高级打包工具的简称,是做安装的app。Install是我们特别希望apt程序做的事情,packagename应该替换为我们要安装的包的名称。
例如,如果你听说过一个叫做Neofetch的应用,你可以直接输入
sudoaptinstallneofetch来安装它。如果您后来决定不再需要Neofetch,可以用类似的方法删除它:
sudoaptremoveneofetch现在试试吧。Neofetch默认不安装在你的Pi上,我们来安装吧。键入前面的命令来更新存储库,然后安装应用。完成后,在命令行上键入命令neofetch。您应该会看到与图3-9非常相似的东西。
图3-9
我们刚刚安装了Neofetch应用
Neofetch是一个不错的小命令行应用,它打印出Raspbian徽标的文本图形表示,并报告关于我们这台小机器的一些技术资料。不是超级有用,但是我们安装之前就没有了!
你应该时常更新你所有的软件。在像Windows这样的系统上,如此频繁地出现如此多的更新,很快就变成了一个大麻烦,但是在Linux上就不同了。Linux系统不会自动执行升级;你必须自己去做,但至少你可以在你准备好的时候去做。这可以通过两个命令来完成:
sudoaptupdatesudoaptupgrade同样,第一行载入一个新的存储库列表,然后第二行升级所有有可用更新的内容。
同样,这个过程的增强版本允许您将整个操作系统升级到最新版本的RaspbianLinux:
sudoaptupdatesudoaptdist-upgrade但是请注意,您可能已经有了Raspbian的最新完整发行版——它可能一年只更新一次或两次,所以大多数时候这不会有任何作用。
请注意,还有其他从命令行安装软件的方法。我们之前看过apt(AadvancedPpackageTool),但是也有偶尔使用的pip(PpackageIinstallerforPython)和curl(CopyfromURL)。使用哪一个取决于各种因素:pip用于安装Python脚本,curl用于直接通过互联网下载安装。绝大多数应用都是使用apt安装的,但也要留意偶尔需要其他应用的应用。当然,我会给出我们在这里看到的每个应用的安装命令。
好了,现在我们可以使用apt以任何方式搜索、安装、删除和更新软件了。现在是时候完成一些工作了!
Raspbian安装了许多最常见的应用和工具,RaspberryPi基金会认为人们最有可能使用它们。绝大多数购买Pi的人都是为了做电子项目和实验。这意味着Pi上有许多科学、电子、编程和接口应用;我们根本不希望这些东西出现在我们的“完成工作”桌面上。我们可以检查并卸载所有我们不想要的东西,但在某些情况下,这些应用包括可能被其他应用使用的文件和库,我们不想因为删除错误的内容而导致问题。因此,与其卸载它们,我们可以简单地从菜单中删除它们。菜单编辑器可以在树莓首选项主菜单编辑器下找到。
使用这个工具并不复杂;只需在左侧窗格中选择一个菜单,然后在右侧“取消选中”您想要删除的应用。如果你发现你删除了一些重要的东西,只需返回并再次检查这个框——没有什么是真正删除的,尽管你可以选择删除它们。你也可以删除整个菜单,比如“编程”和“教育”,就像我在图3-10中的截图一样。您也可以将单个应用在列表中上移或下移,添加分隔线,或者将它们移到不同的菜单,如果您愿意的话。如图3-10所示,这是一个非常简单、灵活的系统,可以根据您的规格进行配置。
图3-10
主菜单编辑器—移除未使用的项目
顺便说一句,浏览所有的菜单并看看有什么是个好主意。您的系统上已经安装了许多应用,但是它们的菜单项在默认情况下已经是灰色的。如果你想尝试这些应用,只需打开它们并进行探索。
正如我们所见,sudoaptinstallappname不仅会安装一个新的应用,而且通常还会为该应用创建一个菜单项。这不是你可以一直假设的事情,有时,你可能会安装一个应用,但在菜单中找不到它。为了创建一个菜单项,打开主菜单编辑器并点击“新建项目”,你会看到一个类似图3-11的小对话框。
图3-11
添加新菜单项
让我们用一个普通的命令行操作来制作一个菜单项。对于我们的例子,我们知道sudoaptupdate是更新软件库的命令。在安装任何东西之前这样做是很常见的,这样你就可以确保你得到的是软件的最新版本。尽管如此,你不需要每次都这样输入;你可以把它做成一个菜单项。
为此,您需要键入
中的UpdateRepositories名称字段
sudoaptupdate在命令的字段中
在注释字段中的Updatethingsbeforedownloadinganewapp。
最后,您可能希望看到这个命令工作,并在出现错误时得到提醒,因此您将在终端中检查Launch。点击OK,现在去看看菜单。你应该在菜单中看到“更新存储库”,类似于图3-12。
图3-12
更新存储库现在是一个菜单项!
多年来,我发现非常有用的一件事是大量使用某种云同步服务。Dropbox、GoogleDrive、OneDrive、iCloud和十几个其他选项可用于Windows和Mac,但我们的小Pi有什么呢?
嗯,有坏消息也有好消息。没有一个主要的云存储提供商有一个可以在RaspberryPi上运行的本地应用。曾经,有一种变通方法可以让Dropbox工作,但Dropbox做出的改变打破了这一点。Insynchq.com做了一个他们的客户端的测试版本,他们声称可以工作,但我从来没有成功地让它正确安装。留意这一点;他们也许有一天会让它完全运转起来。
与此同时,所有主要服务将通过各自的网络接口工作。这与拥有一个集成的本机应用在后台无缝同步文件夹不一样,但至少你可以利用你最喜欢的服务手动上传和下载文件。随着RPi设备变得越来越强大,这些提供商将会看到创建本机接口的好处,因此可以期待这里的变化。
现在你已经进入了桌面界面,浏览了菜单,也许还定制了一些菜单;更重要的是,我们学习了几种安装新应用的不同方法,我们将需要所有这些方法。Linux的一个经常被争论的弱点是安装软件和应用的复杂性,简单的事实是,我们只是看了多种方法来做到这一点,证明了这一点。
尽管如此,我们现在知道它是如何做到的,所以在下一章,我们将看看树莓派桌面的最佳应用。
我们已经设置好了设备,并且已经使用了一些基本的桌面;现在是做一些实际工作的时候了。在这一章中,我们将对你可以用来完成工作的所有最好的GUI桌面应用进行概述。有一个办公套件,许多写作工具和电子邮件客户端,可供选择的网络浏览器,笔记应用,音频和视频编辑工具,插图和图形应用,甚至一些在线文件管理工具。
请记住,这本书的目标读者是普通人,桌面计算机的日常用户,而不是开发人员或工程师。有大量的编程、编码、模板和原型应用可用于Pi,还有大量的工程、电子和机器人应用,我们在这里不讨论。如果你需要的话,还有很多关于RaspberryPi技术方面的优秀书籍和网络参考资料。
本书剩余部分列出的每个应用都有一个类似于以下内容的标题:
笔记簿详细资料:
安装:sudoaptinstallscribus
菜单位置:RaspberryMenu``Graphics
帮助:manscribus
让我们一步一步来看:
如果你是微软Office的重度用户,树莓派世界里唯一可行的替代品就是LibreOffice。整个LibreOffice套件预装了Raspbian、UbuntuMATE和大多数其他发行版;因此,无论您安装了哪个Linux发行版,您都可能已经有了这个版本。你可以在树莓办公室找到它们。
LibreOffice是一个类似微软Office的开源软件。有一个完整的文字处理器(Writer),电子表格(Calc),幻灯片制作(Impress),数据库(base),绘图应用(Draw),和一个方程/公式编辑器(Math)。这些应用可以打开和编辑在MicrosoftWord、Excel和PowerPoint中创建的文档,并提供这些应用最常用的功能。这些应用不能提供100%的微软的更模糊的功能,但对于大多数项目来说,它们工作得很好。
我不是一个大的数据库或电子表格用户,但我经常使用LibreOfficeWriter和Impress(Word和PowerPoint克隆版),甚至在RaspberryPi上也是如此。它们工作可靠,在Pi上速度非常快,即使是较长的文档。一些大型应用在Pi上运行时会受到很大的性能影响,但我发现这些应用在Pi上完全不受影响。这里没有牺牲。
正如你在下面的各种截图中看到的,菜单和界面与微软的非常不同,但是所有的功能都在。一切都有据可查,LibreOffice有一个非常好的帮助系统,可以帮助你找到任何通过浏览菜单找不到的功能。
现在让我们来看看office套件的不同部分,一次一个应用。
书店详情:
安装:sudoaptinstalllibreoffice(预装在Raspbian中)
菜单位置:RaspberryMenu``Office
帮助:manlibreoffice
Writer是LibreOffice中包含的文字处理器,堪比微软word。我发现大多数不依赖VBA或宏脚本的MicrosoftWord文档在Writer中都能很好地加载和运行。这些文件几乎100%兼容,只有非常复杂的文档才会有问题。
图4-1是这本书在LibreOfficeWriter中的图像。
图4-1
在一个树莓派上用LibreOfficeWriter编辑这个手稿
请注意,所有样式都在易于使用的侧窗格中,就像它们在Word中一样。Writer还提供了跟踪修改、打印到打印机或PDF文件(以及其他选项)、表格、公式、书目、邮件合并等功能,以及除了在文档中键入以外的许多其他高级功能。
Calc是LibreOffice的电子表格部分,在功能上类似于MicrosoftExcel。与Writer一样,它可以保存和加载Excel文件,除了Excel的宏和VBA脚本之外,它可以毫无困难地运行大多数电子表格。它提供了相对和绝对参考,跟踪变化,错误跟踪,数据透视表,以及许多令人惊讶的复杂计算。图4-2是Calc在做一些非常基本的计算。
图4-2
Calc书店
和前两个词条一样,Impress本质上是LibreOffice对PowerPoint的功能克隆。虽然它没有PowerPoint令人印象深刻的主题集合,但它确实有几乎所有相同的功能。图4-3为我们展示了Impress的实际应用。
图4-3
Impress书店
LibreOffice中的三大应用是Writer、Calc和Impress但office套件中还有其他应用。LibreOfficeDraw是一个用于创建流程图、图表和任何矢量类型图像的工具。还有Math,这是一个公式编辑器,可以轻松地创建和格式化数学公式,以便在任何其他LibreOffice产品中使用。最后一个是Base,一个数据库创建和管理应用,与微软Access一样,但不兼容。大多数可用于Linux的数据库都是SQL类型的,并且更多地是为服务器端使用而设计的,所以Access对我们来说没有任何直接的克隆。如果这是一个主要问题,请查看Base,然后查看是否有任何其他应用可以复制您需要的特定功能。
对于可以安装在RaspberryPi上的办公套件来说,LibreOffice无疑是最强大的选择,但如果你可以在云中工作,而不是安装套件,也有其他选择。
然而,请记住,尽管这是微软自己制作的真正的官方Office产品,但这种云版本的Office甚至无法与桌面版本的MicrosoftOffice相媲美。事实上,如果您需要高级工具或紧密的兼容性,您可能更适合使用LibreOffice而不是OfficeOnline。有利的一面是,微软免费提供网页版,如果你只需要做相当简单的工作,这是一个稳定可靠的系统,工作良好。此外,在云上意味着它可以在任何地方使用,而不需要随身携带你的文件。
图4-4
在Vivaldiweb浏览器中运行的MicrosoftOfficeOnline
图4-5
在Vivaldi浏览器中运行的GoogleDocs
LibreOfficeWriter是一般文字处理的最佳选择,它也可以执行一些页面布局功能,但对于复杂的页面布局和桌面出版,有一个更好的选择:Scribus。Scribus是一个开源桌面发行商,在功能上类似于微软发行商,但又有很大不同。
有许多使用Scribus制作的月刊杂志,包括RaspberryPi基金会自己的MagPi杂志。
叶垫详情:
安装:sudoaptinstallleafpad
菜单位置:RaspberryMenu``Accessories
帮助:manleafpad
在覆盆子配件下有一个简单的叫做“文本编辑器”的选项这就带来了一个被称为Leafpad的基本文本编辑应用。如果你需要编辑系统文件,想读一个文件,或者只是想用普通的,大部分是无格式的文本来写,这个应用可以满足你。它真的超级好用,比得上Windows上的写字板和Mac上的文本编辑。
请注意,当你安装“编写应用”时,文字处理器和文本编辑器之间有很大的区别。文本编辑器加载并保存纯文本,没有特殊的格式、字体或布局选项,而文字处理器包括诸如粗体、斜体、边距、字体、颜色等格式。文字处理器格式,比如。docx,。odt之类的,把你的文档绑定到创建它们的特定文字处理器,而纯文本文档,。txt,。md,或。tex,可以被任何文本编辑器读取。
一字细节:
安装:sudoaptinstallabiword
帮助:manabiword
这个文字处理器默认不安装在Raspbian中;你需要添加它。如果你不需要LibreOffice套件中的所有其他应用,而只是想要一个独立的文字处理器,这是一个值得尝试的应用。它又小又快,而且是跨平台的,所以你也可以把它安装在其他电脑上。
Texmaker详细信息:
安装:sudoaptinstalltexmaker
帮助:mantexmaker
这不是标准的文字处理器。这是一个用LaTeX编写的工具,LaTeX是一个文本格式化系统,我们将在第七章中详细讨论。简而言之,LaTeX是一种文本格式化语言,允许您使用简单的文本命令来描述极其复杂和详细的文本布局、等式、数学、图像,甚至像边距和字体这样的东西。如果这听起来很复杂,那是因为它是复杂,但像Texmaker这样的工具有助于大大减轻这种复杂性。图4-6在左边的窗格中显示了一个示例LaTeX文档,在右边的窗格中显示了一个编译完成的文档。
图4-6
Texmaker专业乳胶编辑器
PDF格式的文档是大多数企业的主流。你如何创建它们,如何在Pi上读取它们?
qpdf查看详情:
安装:sudoaptinstallqpdfview(预装在Raspbian中)
帮助:manqpdfview
如果你只是在文件管理器中双击一个pdf文件,系统将打开该文件,并允许你使用一个名为Qpdfview的应用来查看它。这是一个简单的小应用,可以让你快速方便地查看pdf文件。它做的不多,但是加载快,兼容复杂的pdf文件,所以试试吧;如果这就是你所需要的,那就坚持下去。如果简单的工具就能完成工作,为什么还要使用复杂的工具呢?
证据详情:
安装:sudoaptinstallevince
帮助:manevince
Evince是PDF阅读器的下一步。您可以并排查看两个页面、创建书签、注释文本、打印、查看缩略图(如图4-7中的截图)等等。在图4-7中,你可以在左边看到缩略图索引,在右边看到一个大的可读页面。视图可以用几种不同的方式配置,所以这是最灵活的pdf阅读器之一。
图4-7
EvincePDF阅读器(一期MagPi包含在Raspbian中)
OkularDetails:
安装:sudoaptinstallokular
帮助:manokular
如果你需要更高级的工具来处理和编辑pdf,那么这就是你想要看的工具。您可以选择和编辑文档的区域、打印、添加书签、重新排序页面等等。除了PDF,它还支持其他格式:Postscript、DjVu、CHM、XPS、EPUB和其他格式。正如你在图4-8中看到的,Okular有更多的选项,但也给了我们一个更复杂的界面。
图4-8
OkularPDF管理器(MagPi问题免费包含在Raspbian中)
发送和接收电子邮件是许多人的主要工作功能。虽然Raspbian上没有Outlook或Mail.app,但有一些非常强大的替代产品。
雷鸟详情:
安装:sudoaptinstallthunderbird
菜单位置:RaspberryMenu``Internet
帮助:manthunderbird
雷鸟从2004年就出现了,你可以获得所有主要操作系统的版本。它的功能与微软的Outlook相当,而且是由Mozilla发布的,与Firefox网络浏览器的开发者是同一批人;所以他们是可靠的,成熟的,不会很快消失。如果你使用网络浏览器查看邮件,这很好,但如果你想要一个离线邮件应用,这是一个尝试。它包括一个联系人列表、一个日历应用和许多其他强大的工具。
配置你的电子邮件账户通常很容易;我输入我的Gmail账户和密码,它就自动为我设置好了其他一切。结果如图4-9所示。
图4-9
雷鸟:功能齐全的电子邮件客户端
爪子详情:
安装:sudoaptinstallclaws-mail
帮助:manclaws-mail
如图4-10所示,ClawsMail预装在Raspbian中,因此您已经可以使用它了。它有几个对话框来帮助你设置你的账户,但是它不像雷鸟那样直观;您可能需要查看您的web提供商提供的说明,以便手动配置POP3、SMTP和IMAP设置。它的功能也远不如Thunderbird全面,但是,一旦它配置好了,在Pi上使用起来非常简单和快速,所以这可能就是你所需要的。
图4-10
Claws邮件客户端
铬详情:
安装:sudoaptinstallchromium(预装在Raspbian中)
帮助:manchromium
Chromium是包含在Raspbian中的浏览器,也是谷歌Chrome浏览器的开源版本。嵌入在Chrome中的许多代码最终会变成普通的Chrome。
火狐详情:
安装:sudoaptinstallfirefox
帮助:manfirefox
维瓦尔第详情:
安装:(seeinthefollowing)
帮助:(seewebsite)
安装起来有点复杂,因为它不包含在Raspbian中,也不包含在“apt”库中。一次键入以下一行:
闸门详细资料:
安装:sudoaptinstalltor
运行命令:tor
帮助:mantor
Tor是一个将VPN(虚拟专用网络)和网络浏览器结合在一起的系统。这是一款可以伪装你的位置和任何可追踪信息的浏览器。对于真正的隐私浏览,这是一个值得研究的工具。
在Windows和Mac上,您可以简单地下载Tor浏览器,并像使用其他浏览器一样使用它。Tor浏览器在RaspberryPi上不可用,但是有一个解决方法。你可以安装Tor的服务器版本,然后让Chromium浏览器通过它工作。这使得你的网络活动很难追踪。一旦安装了Tor,只需进入命令行并输入
chromium-browser--proxy-server=socks5://localhost:9050这将运行已经安装的Chromium浏览器,并使所有输出通过Tor的类似VPN的系统。当我运行前面的命令时,我去了谷歌地图,如图4-11所示,看看它认为我在哪里。它向我展示了乌克兰哈尔科夫的一个地点!
图4-11
我不在乌克兰,但在互联网上看起来是这样的!
Raspbian中没有专门用于记录和保存信息的应用。您可以使用前面讨论过的Leafpad文本编辑器或LibreOfficeWriter,但是对于一个简单的列表或笔记来说,这些工具往往是多余的。
GNote详细资料:
安装:sudoaptinstallgnote
帮助:mangnote
这是一个超级简单的笔记本应用,可以让你轻松地将文本输入或剪切并粘贴到笔记中,甚至可以让你将笔记链接在一起。虽然您可以设置基本格式,如粗体、斜体和下划线,但无法插入图像或其他非文本项目。GNote的目标是尽可能简单。当您运行它时,您会看到类似图4-12的内容。
图4-12
添加了几个快速注释的GNote
OneNote是MicrosoftOffice套件的一部分,与Word和Excel一样,它也有一个在线组件。这是目前最强大的笔记应用之一,无论是在Pi上还是其他地方;你输入的所有内容都会无缝地同步到你的iPhone、Android或其他电脑上。您有多种组织数据的方式—单个笔记本或笔记本中的分区,然后放在单个页面上。有很大的灵活性;您可以包含文本、图像、pdf甚至声音文件。与其他Office应用不同,OneNote可供任何人在所有平台上免费使用。
图4-13
在Chromium中运行的MicrosoftOneNote
Zim详情:
安装:sudoaptinstallzim
帮助:manzim
Zim(图4-14)是一个桌面wiki。wiki是一种收集、链接和组织大量页面数据的方法。如果你熟悉维基百科,你会有这样的想法,但这要简单得多,也更容易管理。所有数据都存储在带有wiki格式的纯文本文件中。如果你平时只是在笔记本上随便输入一堆东西,这个app可能会矫枉过正;但是如果你的笔记需要任何形式的组织,不管是简单的还是复杂的,这都是值得一试的。它还允许存储文本、链接、照片、任务列表和方程式编辑器,并接受插件进行扩展。
图4-14
Zim桌面wiki
樱桃树详情:
安装:(见inthefollowing)
帮助:mancherrytree
Cherrytree是另一个wiki,在许多方面与Zim相似,但它要复杂得多,并且允许大量的定制和功能。它的界面比Zim更现代。它可以存储文本、图像、文件、链接、表格和可执行代码片段。它允许您将所有数据包含在一个xml文件中,或者如果您有大量的注释,您可以将它们存储在SQL数据库中。Cherrytree可用于Linux和Windows,但没有Mac版本,所以如果你正在考虑在机器之间同步数据,请记住这一点。
要安装,请转到命令行,仔细键入以下两行:
图4-15
cherrytree——一个有许多选项的强大维基
音频和视频编辑是众所周知的处理器密集型任务,许多公司出售非常昂贵的图形工作站来处理视频工作。视频渲染是苹果新推出的6000美元MacPro电脑的主要用途之一。树莓派能和它竞争吗?
嗯,不。尽管如此,Audacity的音频编辑是完全可能的,而且效果很好。此外,RaspberryPimodel4可以使用Kdenlive加载、转换、保存和编辑视频。
老款的RPi…嗯,可以试试,但是体验真的不是很好;旧的Pi型号没有加载大型音频和视频文件所需的内存。也就是说,这些应用确实可以运行,甚至在老款机型上也可以运行,而且确实可以工作;所以如果这些是你需要的工具,那就尽情享受吧!
无畏细节:
安装:sudoaptinstallaudacity
菜单位置:RaspberryMenu``Sound&Video
帮助:manaudacity
在“普通”电脑上,Audacity以功能最丰富的开源声音编辑系统而闻名。它有插件,效果,宏,以及大量的其他功能。我个人在Mac上用Audacity编辑过从播客到有声读物的所有内容。
AudacityfortheRaspberryPi,如图4-16所示,具有在全功能计算机上发现的大部分相同功能,这很好,但在任何低于model4Pi的计算机上使用它都非常慢。问题不在于应用本身,而在于声音文件的大小,这些文件通常会变得相当大;Pi型号3B+和旧型号没有足够的内存来有效地处理这些文件。不过,对于像以不同格式保存文件或做一些小的编辑这样的事情,它在旧的Pi上工作得很好!
也就是说,有了新的RaspberryPi4,它工作起来没有任何问题。由于RAM的原因,非常大的文件可能仍然会受到限制,但大多数短录音都可以很好地加载和编辑。
图4-16
RaspberryPi上的Audacity声音编辑器
Kdenlive详细信息:
帮助:mankdenlive
Audacity处理声音文件,而Kdenlive处理视频。Audacity在Pimodel4上运行得很好,而Kdenlive在视频方面仍然有些困难。它运行,它加载文件,但老实说,视频编辑真的不是最新的Pi所擅长的,因为视频文件太大了。尽管如此,它仍然可以安装和运行,所以如果你好奇的话,可以尝试一下。
与一起安装
sudoaptinstallbreeze-icon-themesudoaptinstallkdenliveVLC球员VLC玩家详情:
安装:sudoaptinstallvlc
帮助:manvlc
编辑视频对树莓派来说有点多,但观看它们要容易得多。如果你只是想看视频,VLC播放器绝对不会错,如图4-17所示。它包括许多视频编解码器,你需要播放各种视频和音乐格式,让你播放电影或音乐播放列表,使用字幕,并做流媒体;而且启动时非常容易配置。
模型3B+RPi不能处理4K视频,但对于720p甚至大多数1080p视频,它工作得很好。对于型号4Pi,视频输出是升级的主要目标之一。它不仅可以轻松处理4K视频,而且可以同时处理两台显示器。视频性能是升级的主要目标之一,所以你可以真正地说,它是为具有两个4KHDMI输出的视频输出而构建的。
图4-17
用VLC播放器观看视频
偶尔听听音乐也挺好玩的。前面提到的VLC可以很好地播放音乐和播放列表,但一个专门从事音乐管理和图书馆管理的应用将提供更多的功能。我认识一些人,他们制作了一个专用的树莓派,并把它们放在各种类型的点唱机和古董收音机模仿项目中。我们不打算在这里走那么远,但这里有三个伟大的MP3播放器,你可以尝试。除了常规的音乐文件,如果你喜欢音频播客,Amarok和克莱曼婷都可以轻松处理它们。
Amarok详细资料:
安装:sudoaptinstallamarok
帮助:manamarok
Amarok是一款播放器,可以处理储存在电脑上的所有音频文件,也可以处理大量的流媒体网络服务。Last.fm、LibriVox、MP3Tunes、podcasts和许多其他网站和服务都受到支持。
Qmmp详细资料:
安装:sudoaptinstallqmmp
帮助:manqmmp
多年来,Windows上最受欢迎的音乐播放器是一款名为Winamp的应用。开发人员几年前就放弃了更新和开发Winamp,但这个Winamp外观相似的应用是可用的,并且工作得非常好。它可以处理MP3文件和播放列表,而且一切都很时尚。如果你还记得Winamp,那就看看Qmmp。
克莱曼婷详情:
安装:sudoaptinstallclementine
帮助:manclementine
克莱曼婷是跨平台的,所以如果你在你的Pi上创建了一堆播放列表,你可以毫无问题地把它们移动到其他地方。它在许多方面与iTunes相似,因为它几乎可以做任何事情。克莱曼婷将管理你的图书馆,连接到网络服务,以及许多其他功能。图4-18显示了RPi版本。
图4-18
克莱曼婷音乐播放器展示其网络服务
GIMP详细信息:
安装:sudoaptinstallgimp
帮助:mangimp
GIMP,如图4-19所示,是GNU图像处理程序的缩写,是一个功能非常丰富的图形编辑器,与Adobe的Photoshop处于同一级别。与我们几页前讨论过的音频和视频编辑器不同,GIMP在Pi上工作得很好。一些图像计算和复杂的渲染有时可能会很慢,但这并不太糟糕,在实际使用该应用时不会变慢;一点也不痛苦。
有内置的“脚本”制作标志、按钮和其他网络东西,有许多过滤器和编辑设置,它们都在Pi上工作。这是一个非常强大和复杂的应用,几乎可以对图像做任何事情,但所有这些功能都有一个陡峭的学习曲线。幸运的是,这是一个受欢迎的应用,有许多书籍和视频可以告诉你如何开始。
和往常一样,这个可以用sudoaptinstallgimp安装。
图4-19
GIMP:GNU图像处理程序
喷墨打印纸详细资料:
安装:sudoaptinstallinkscape
帮助:maninkscape
GIMP非常棒,非常强大,可以编辑照片和创建类似照片的图像。硬币的反面是矢量图形,通过记录一系列点,然后“连接这些点”来进行设计,使这些图像可以无限缩放,这对于尺寸可以变化的徽标、海报和视觉设计非常有用。Pi上最适合这个的应用是Inkscape。Inkscape大致相当于AdobeIllustrator,其中GIMP更类似于AdobePhotoshop——不同的工作使用不同的工具!图4-20向我们展示了一张放大的父亲节图片。
图4-20
矢量SVG文件加载到Pi上的Inkscape中
Pi上的大部分文件管理是通过文件管理器应用处理的,甚至是通过基于文本的文件应用,如午夜指挥官(见第五章),甚至是Linux命令行文件操作工具,如mv和cp(我们将在后面看到这些)。尽管如此,有时你需要更复杂的方式来移动文件,而这通常使用桌面上的可视化工具更容易做到。
FileZilla详细资料:
安装:sudoaptinstallfilezilla
帮助:manfilezilla
您可以在左边的窗格中浏览Pi上的所有文件,在右边的窗格中浏览远程机器上的所有远程文件和目录,然后使用鼠标轻松地进行复制、移动、删除或任何您想做的事情。
FileZilla使用普通ftp或sftp来增加安全性。如果您的文件传输被中断,它们很容易恢复,从第一批失败的地方继续。这是我最喜欢的从同一网络上的另一台计算机将文件输入和输出我家的Pi的方法。你可以在图4-21中看到我正在连接我的Mac电脑;本地RPi文件在左边,右边的文件在我Mac的硬盘里。只需拖放即可将文件从一个文件夹移动到另一个文件夹,移动整个文件夹也一样简单。
图4-21
从Pi上运行的FileZilla访问我的Mac
大洪细节:
安装:sudoaptinstalldeluge
帮助:mandeluge
大洪是跨平台的BitTorrent客户端,图4-22有截图。BitTorrent一直有点争议,因为它经常被用来盗版电影和音乐,但它也有很多合法的用途。大多数(如果不是全部的话)Linux发行版可以通过BitTorrent系统下载,并且文件传输速度通常比普通下载要快。不管你运行洪流的目的是什么,洪水是在Pi上运行的解决方案。去一个提供的网站。torrent文件并下载到你的Pi上。装载洪水并打开。torrent文件,目标文件将下载。
图4-22
通过洪水应用下载BitTorrent
我们现在已经讨论了大量的应用,至少在我看来,这些是这些特定工作的最佳应用。还有和其他做同样事情的应用,我还没有提到,如果你对我的一些建议不满意,那么通过快速的在线搜索,可能有其他的选择。更有可能的是,你需要完成一些我甚至都没有想到的任务。如果是这种情况,那么仔细阅读我们在前一章中谈到的Raspbian软件安装程序,看看是否有一个易于安装的工具可以满足您的需要。
如果没有,你可以在谷歌上搜索一下,看看是否有人已经以某种方式解决了这个问题。这些app都是开源的解决方案,大多数开源开发者都渴望解决问题,建议工具。
我们已经在前一章和本章中分别介绍了桌面GUI界面和应用。现在,我们将对命令行界面做同样的事情:首先是界面工具,然后是应用。等等,选择从这里开始!
在过去的二十年里,我们都已经习惯了使用GUI应用和桌面,但在此之前,一切都是在终端屏幕上以文本模式完成的。如果你还记得MS-DOS或UNIX的时代,那么你就知道该怎么做。一直以来都是命令行。不管怎样,我们还是设法完成了工作。
许多基于文本的应用不依赖鼠标,甚至不支持鼠标。如今,键盘命令通常被认为是“高级用户技巧”,但是没有鼠标,它们就成了必需品。当你的双手可以一直放在键盘上时,你的工作效率会飞速提高。
当然,如果你对桌面出版或视频编辑感兴趣,那么你真的需要图形工具。有些东西只需要图形用户界面。另一方面,有许多任务仅仅使用键盘也可以完成,如果不是更有效的话。如果你认为用RaspberryPi作为你唯一的电脑是一个有趣的挑战,试着在文本模式下完成它!
在这一章中,我们将会看到一些用来在文本模式下完成工作的基本工具。这不是一个关于Linux命令的全面教程,但是我们确实研究了一些命令,以及可以与这些命令一起使用或者有时代替这些命令的工具。我们先来看看Tmux,一个可以让你一次控制多个文本“窗口”的应用;然后我们再来看一个比Raspbian收录的更好的终端app最后,我们将看看两个文件管理器,它们将使您移动、复制、备份和删除文件的体验更加容易。最后,我们将回顾一些基本的Linux/Unix文件命令,这些命令允许您手动复制、移动、删除文件,等等。
您可能会把命令行想象成一个黑屏,上面有几行复杂而晦涩的绿色文本。如果这是您想要的,您当然可以这样做,但是有许多工具可以使停留在文本模式更像运行窗口GUI。应用Tmux给你多个窗口。终结者给了你很好的配色方案,字体选择,并以不同的方式来分割你的屏幕。午夜指挥官和游侠使文件操作比试图记忆一堆命令更容易和更强大。我们将查看所有这些内容,并为枯燥的命令行增添趣味!
Tmux详细资料:
安装:sudoaptinstalltmux
运行命令:tmux
点文件:~/.tmux.conf
帮助:mantmux
有了像Windows或MacOS,甚至Raspbian的桌面这样的GUI,当你想一次运行多个应用时,你只需在自己的小窗口中运行每个应用。您可以将这些窗口彼此相邻放置,如果需要可以重叠它们,或者完全最小化它们。对于文本模式的终端应用,你只有一个屏幕,所以你需要把屏幕分成几个部分,在每个部分运行一个应用。实际上,您会得到相同的结果,但是需要提前多做一点计划。图5-1显示了使用一个名为Tmux的应用在一个窗口中运行的两个应用。
图5-1
Tmux正在使用
Tmux是所谓的“终端多路复用器”这是一种奇特的说法,它把你的终端窗口分割成更小的窗格,每个窗格可以运行一个单独的程序。图5-1显示了一个运行两个应用的终端窗口:左边是Vim,右边是目录列表。这都是通过Tmux完成的。
看起来不怎么样;您可能会注意到窗口底部有一个彩色条。这是典型的命令行应用;他们通常没有精美的菜单。
你可以通过按下Tmux“command键”来控制Tmux,默认情况下是Ctrl-B。要让事情发生,你可以按Ctrl-B和其他键,这取决于你想做什么。例如,要垂直分割屏幕,如图5-1,按Ctrl-B,然后按%。请注意,要获得%,您还必须按住Shift键,因此实际上是Ctrl-B,然后Shift-5(在美国键盘上获得%)。
表5-1提供了最常用Tmux命令的快速列表。您可以将屏幕分割成多个窗格,和/或您可以拥有多个窗口,它们是整个屏幕。
表5-1
各种Tmux命令
行动
|
组合键
||---|---||垂直拆分窗口|Ctrl-b%||水平分割窗口|Ctrl-b"||新窗口|Ctrl-bc||关闭窗口|Ctrl-d或Ctrl-bx||终止窗口|Ctrl-b&||下一个窗口|Ctrl-bn||上一个窗口|Ctrl-bp||重命名窗口|Ctrl-b,||列出所有窗口|Ctrl-b瓦||移动到窗口编号|ctrl-b[数字]||下一个面板|Ctrl-b或||前一窗格|Ctrl-b;||显示窗格编号|Ctrl-bq||向左移动窗格|Ctrl-b{||向右移动窗格|Ctrl-b}||交换窗格位置|Ctrl-bCtrl-o||向下调整窗格大小|Ctrl-bCtrl-j||向上调整窗格大小|Ctrl-bCtrl-k||向左调整窗格大小|Ctrl-bCtrl-h||向右调整窗格大小|Ctrl-bCtrl-l|
那个看起来像是要记很多东西,但是通过使用你会很快掌握它们。开始时,你需要记住的是Ctrl-B,然后是%或"来垂直或水平分割窗口;然后使用Ctrl-B和箭头键在窗格之间导航。
在第七章中,我将带你浏览我的Tmux的“dotfile”配置文件,向你展示一种简单的方法来改变这些键绑定或者改变Tmux的行为。
养成打开自己选择的终端app,然后马上加载Tmux,然后再加载其他任何东西的习惯是很好的。这样,如果你发现自己需要另一个应用,你可以打开另一个窗口,让它就在那里。当然,如果您愿意,您仍然可以打开两个、三个或十五个不同的终端窗口,但是同样,呆在Tmux中,您不会因为使用鼠标而放慢速度。
如果你正在引导进入文本模式(完全没有GUI),那么Tmux是你可以同时运行多个应用的唯一方法。
终结者详情:
安装:sudoaptinstallterminator
帮助:manterminator
以前的应用Tmux在一个通用的终端窗口中运行,并以不同的方式分割您看到的内容,而Terminator是一个取代内置终端应用本身的应用,并在一个窗口中运行多个可调整大小的终端面板。
《终结者》并不完全是一款基于文本的应用;它是Linux终端的替代品。如果你喜欢Raspbian自带的常规终端应用,或者你更喜欢使用更常用的Tmux分屏方法,你可以跳过这一步。另一方面,我喜欢颜色和字体的定制,我认为它看起来更好,如图5-2所示。
图5-2
三块终结者玻璃
游侠详情:
安装:sudoaptinstallranger
运行命令:ranger
Dotfile:里面的各种文件~/.config/ranger/
帮助:manranger
午夜指挥官详情:
安装:sudoaptinstallmc
运行命令:mc
Dotfile:里面的各种文件/etc/mc/
帮助:manmc
午夜指挥官和游侠都是档案管理员。它们允许您轻松浏览计算机的文件夹层次结构,复制、移动、重命名和删除文件,以及查看文件内容的预览。
完全可以忽略这两个,简单地用Unix命令复制文件,像cp,mv,rm,ls等等;有时候简单地输入命令会更快。不过,学习所有的Unix文件操作命令绝对是明智之举,这样你就可以快速地做事情。如果您喜欢纯粹使用命令行shell,如图5-3所示,您随时都可以这样做。
另一方面,有时您想处理批量文件,或者更直观地浏览和导航您的文件。《午夜指挥官》和《游侠》都有各自的优点,但选择其中一个并学会真正精通它可能是最有效的方法。
Ranger有一种更加“开放”的感觉,在最左边的两个窗格中有两级目录,在第三个窗格中有一个文件预览。移动速度很快,非常直观,但屏幕上没有任何控件或菜单——所有的都是通过记忆的键盘命令完成的,这在开始时会让你变慢。如图5-4所示,它显示的非常干净和稀疏。
图5-4
Ranger的文件列表
图5-3
普通命令行上的文件列表
另一方面,午夜指挥官提供了一个永久的两列视图,如图5-5所示。这对于复制文件或比较文件夹来说很好,甚至还有一个内置的文件编辑系统。屏幕顶部还有菜单,可以通过键盘或(喘息!)鼠标。
图5-5
午夜指挥官的文件列表
你用哪一个完全取决于你自己。它们都做完全相同的事情,但是它们的接口完全不同。我通常在命令行上执行大多数文件移动命令——请参阅下一节了解更多信息。如果我想快速移动到一首歌曲或加载一个文本文件,我会在Ranger中快速缩放到它。当我使用深度嵌套的路径时,或者在我不知道东西在哪里或者需要在一堆文件和目录中查找的时候,我会使用MidnightCommander。
那些完全相同的工具也可以在大型远程计算机上工作,所以如果你遇到一些你的RPi真的不能处理的应用或进程,你可能想在别人的计算机上运行那个进程。举两个常见的例子,你可以从Linode.com和DigitalOcean.com这样的公司“租借”一台远程服务器。这些系统很便宜,每月大约5美元,并且可以无限扩展。
您可以坐在您的RaspberryPi、显示器和鼠标前,在您选择的终端应用中使用SSH和VNC浏览器在远程服务器上工作。在前面的章节中,我们看了内置的Ubuntu终端和Terminator,但是这里有几十个其他的选项,你可以从桌面或者全屏命令行运行。你甚至可以通过这种方式访问Mac或Windows电脑,前提是你已经安装了正确的远程访问软件。如果你不能用Pi解决你的所有问题,也许你可以把它作为一个窗口,让一个更大的机器来做你需要的事情。
回到20世纪70-80年代,这种客户端-服务器配对非常普遍。人们将使用“哑”终端连接到“智能”计算机和大型机来完成工作。在个人电脑时代,这种思维方式消失了几十年。现在,在“一切都连接到互联网”的现代,在“云”中工作是很平常的事情
有了这种工作方式,你只需要一个好的终端程序就可以了,比如我们将在后面讨论的Terminator,以及预装了Raspbian的VNC浏览器。你需要的所有计算能力都驻留在云中,你的Pi系统完全可以这样做任何事情。
SSH详情:
安装:sudoaptinstallssh
运行命令:ssh
点文件:~/.ssh/configand/etc/ssh/ssh_config
帮助:manssh
图5-6
在树莓Pi上通过SSH访问我的Mac
VNC浏览器详情:
安装:(seewebsite)
帮助:manvncviewer
图5-7显示了从我的RaspberryPi台式电脑访问我的Mac桌面。是的,我真的可以从我的Pi桌面上运行我的Mac应用;有些东西比它们本来的速度要慢一些,但是它们确实可以工作。VNC软件在个人电脑和苹果电脑上都是免费的。这是一个超级强大的工具,不花一分钱。
图5-7
通过VNC浏览器查看我的Mac
在大多数情况下,你在命令行上输入的90%都是应用的名称。我们将在下一章中讨论其中的许多问题。Emacs、Calcurse、Vim,甚至更多实用风格的app如apt、shutdown其实都只是自己的小程序。有时你需要操作一个文件或一个目录,这就是本节的目的。请注意,所有这些命令以及更多命令都可以通过MidnightCommander之类的界面来完成,所以即使是在命令行中,其中一些命令也是可选的。尽管如此,有时直接输入命令比使用菜单更快更方便。
根据我的经验,最简单也是最常用的命令之一就是清理凌乱的屏幕。如果你想清除屏幕,只需输入
clear在命令行中。你会看到一个刷新,整齐的终端屏幕。它做的不多,但是这些年来,我输入这个命令的次数可能比其他任何命令都多。
如果你正在运行一个终端窗口,你可以简单地输入exit来结束你的会话并关闭窗口。如果你使用了选项来引导进入全屏模式,那么你不能只是退出终端;你需要使用reboot或shutdown命令来代替。
ls是“列表”或“列表结构”的简称它只列出了当前目录中的所有文件。
lsgivestheoutputDesktopDownloadsMagPiMusic'PodsafeMusic'TemplatesDocumentsDropboxMain.orgPicturesPublicVideos通过添加一些参数和选项,您可以做更多的事情:
ls-alt向我们展示了
ls-al~ls-al/homels-al/home/brian/Music/Instrumental主目录:~波浪号(~)是一个特殊字符,表示当前用户的“个人”文件夹。这样,不管你是谁,也不管你在系统中处于什么位置,你都可以一般性地引用“home”。
如果你确实想指定一个位置,你可以在选项后输入它,像这样:
ls-al/home/brian/Music这将专门列出用户“brian”的音乐文件夹的内容
使用ls命令,我们学会了查看不同目录中的内容。如果你想移动到一个目录,你使用cd(改变目录)命令。
cd/home/brian将当前目录更改为用户brian的主文件夹。另一种进入当前用户个人文件夹的方法是cd~.即使你不知道当前用户的名字,这个方法也有效。
cd/带您到文件系统的根,即文件系统“树”的“根”其他的都是从/分支的子目录。
cd..两个句点“..”表示位于当前目录正上方的目录。例如,如果你现在在/home/brian/Music,你想去/home/brian,你可以简单地输入cd..,你将在结构中上移一层。或者,你也可以输入cd/home/brian,,但这两个句号的输入速度更快。
有时,您需要创建一个目录/文件夹,为此,您可以使用mkdir命令。您可以通过键入以下命令在当前目录中创建一个目录
mkdirnewname或者,您可以在文件系统中的任何位置创建一个新目录,方法是在新目录名之前包含完整的路径名:
mkdir/home/pi/Downloads/newname请注意,要在当前目录中创建一个新目录,您必须拥有访问权限。
类似地,要删除一个目录,可以使用rmdir命令:
rmdir/home/pi/Downloads/newname移除/删除目录要求该目录为空。您需要首先删除所有文件或子目录。
要查看Linux文件系统的“图表”,您可以键入命令tree。它将显示您指定的路径下的所有子目录。例如,要查看下载目录中所有内容的结构,您只需输入
tree~/Downloads并获得以下内容:
/home/pi/Downloads├──DOSGamesPack.zip├──kali-linux-2019-2a-rpi3-nexmon-img-xz│├──kali-linux-2019.2a-rpi3-nexmon.img.xz│└──kali-linux-2019.2a-rpi3-nexmon.img.xz.txt.sha256sum└──kali-linux-2019.2a-rpi3-nexmon.img.xz.torrent1directory,4files有时候,这对于查看东西藏在哪里或者是否有一个你已经忘记的目录非常有用。
除了cd命令,你也可以使用该命令
让系统告诉你你现在在哪里。Pwd是现在工作目录的简称。
类似地,如果您需要查看当前的用户名,您可以问
有时,您会想要删除文件。为此,您可以使用移除命令rm。你总是需要在rm后面加上一些文件名或目录名:
rm/home/brian/junkfile.txt这将从我的主目录中删除文件junkfile.txt。
rm/home/brian/download/*这个命令使用一个“通配符”星号来表示“一切”这个命令将删除用户brian的下载目录中的所有文件。这只会删除文件,不会删除子目录。如果您想删除目录中的所有内容,包括其下的所有内容,您需要-r和-f选项:
rm-rf/home/brian/download/*
-r告诉rm递归地删除文件,或者换句话说,跟随任何子目录并杀死它们。-f选项删除确认消息。"您确定要删除它吗?"种消息将不再出现。
注意递归删除文件可能是危险的。命令rm-rf*将删除计算机上的所有东西——所有用户的每个系统文件、每个数据文件,假设你有权限访问这些文件;这是Linux依赖于许可系统的一个原因。这比让每个用户完全访问所有内容要安全得多。
说到权限和访问,有时您可能想要更改文件的所有者。例如,假设您以用户“pi”的身份创建了一个文件filename.txt,并且您想以用户“brian”的身份编辑它您可以将文件加载到编辑器中,但是当您尝试保存更改时,会收到一条消息,指出您没有权限这样做。为什么呢?因为操作系统认为这不是你的文件。
将文件从一个目录复制和移动到另一个目录也很常见。这里使用的两个命令是cp和mv,分别用于复制和移动。cp命令将一个文件从一个目录复制到另一个目录,当它完成时,在两个位置都会有该文件的副本。mv命令做同样的事情,但是它也删除了原始文件,有效地移动文件。
cp/home/brian/download/game.tar/home/brian将在brian的主目录中创建game.tar的精确副本,而将原件留在下载目录中。
mv/home/brian/download/game.tar/home/brian将在brian的主目录中创建game.tar的精确副本,然后删除下载目录中的原始副本。
您还可以使用通配符将文件夹中的所有文件移动到某个位置。
mv~/download/*~/backups会将/home/username/download目录中的所有文件移动到/home/username/backups目录中。
如果有疑问,请阅读手册!说真的,Linux擅长的事情之一是对命令行应用的全面文档化。如果有一个命令你真的不明白,你可以阅读完整的在线手册。假设Neofetch让你困惑;它到底是做什么的?目的是甚麽?
假设您已经安装了Neofetch,输入
manneofetch你会得到多个屏幕页面的文档,包括如何使用它的概要,解释应用用途的描述,所有可以使用的选项和参数,以及其他任何重要的内容。通常,有比你想知道的更多的信息。阅读手册页时,您可以使用箭头键上下移动,空格键前进到屏幕“页面”,键盘上的Q键退出并返回到提示:
在下一章,我们将看几十个命令行程序,它们将解决你的许多工作需要。我们将看看电子邮件客户端、书写工具、电子表格和几个网络浏览器,它们都以文本模式运行。
既然您可以使用命令行并在其中移动东西,那么是时候做一些真正的工作了。
在这一章中,我将向您展示一些执行大多数任务的最常见和最流行的命令,但是请记住,几十年来,人们一直在使用类似的工具来执行这些任务(Unix出现于20世纪70年代,而Linux是这些工具的直接后代);每个应用可能有几十种可用的解决方案,人们仍在想出新的方法来做同样的事情。所以,在你看过我的建议后,做一点网络调查,看看是否有更适合你工作流程的方法。
可能大多数人的主要任务(除了浏览网页和电子邮件)是写作。无论是简单的笔记、电子邮件还是完整的书籍,都有一些很棒的纯文本工具来完成这项工作。
不像微软的Word或者苹果的Pages,你不能在一个基于文本的终端窗口中仅仅高亮显示一个单词,并把它变成粗体或者斜体。你通常需要使用某种标记语言,比如Markdown或LaTeX(见第七章)。像几乎所有涉及到切换到文本模式的事情一样,它在开始时更困难,但是一旦你知道它是如何工作的,它会更有效率和更快。
纳米详情:
安装:sudoaptinstallnano(defaultwithRaspian)
运行命令:nano
点文件:~/.nanrc
帮助:mannano
Nano通常预装在大多数Linux系统中。这是一个非常非常基本的文本编辑器。事实上,对于大多数有用的任务来说,它几乎太基础了——Nano的定制选项非常有限。也就是说,几乎可以肯定它已经预装在你的系统中了,它很适合快速阅读或快速修改文件。在本书中,当我们需要编辑文本文件时,我的例子使用Nano。它很简单,每个系统上都有,所以这是本书的“标准”文本编辑器。在过去的章节中,我们已经多次使用Nano向配置文件添加行。它不仅简单易学,而且所有功能都可以通过屏幕底部的两行菜单轻松找到。它不是“一生的编辑”,但可能是你需要的全部。在Nano的图6-1中可以看到这一章的降价版本。
图6-1
纳米文本编辑器
Vim详细信息:
安装:sudoaptinstallvim
运行命令:vim
点文件:~/.vimrc
帮助:manvim
Vim和Emacs是为程序员设计的文本编辑器,如果你是一名程序员,这两者中的任何一个都是你精通的绝佳选择。任何一个都可以适用于几乎任何东西,因为你可以想象的每一个功能都有无数的定制选项和插件。
至少在我看来,Vim一开始有点难学,但是一旦你通过了学习曲线,它就非常值得。这是一个模态编辑器,意味着你可以在一种模式下移动和导航,在另一种模式下输入文本,在第三种模式下可视地选择内容。这是一种不同寻常的工作方式,来自于像微软Word这样的东西,但是一旦你了解了这个应用是如何工作的,就会有很大的力量。Vim如图6-2所示。
图6-2
我是文字编辑器
Emacs详细资料:
安装:sudoaptinstallemacs25
运行命令:emacs
点文件:~/.emacs
帮助:manemacs
然后是Emacs,如图6-3所示。有些人不用离开Emacs就可以打字、查看电子邮件、在日历上添加约会、更改待办事项、浏览网页。比Vim容易上手,但是用的越多,Emacs的无底洞就越深。在Emacs的“专家级别”工作的人可能不用离开Emacs就能做我们在这本书里谈论的所有事情……。还有人开玩笑地称Emacs本身就是一个操作系统,但它的可扩展性太强了,几乎不是开玩笑。
图6-3
Emacs文本编辑器
注意前面的apt命令安装的是emacs25,而不是普通的emacs。您可以选择安装默认的Emacs,但是由于某种原因,Raspbian安装程序将默认安装Emacs版本24,这是一个更老、更受限制的版本。除非你知道你可能需要它的一些具体原因,否则不要使用它。
WordGrinder详情:
安装:sudoaptinstallwordgrinder
运行命令:wordgrinder
点文件:~/.wordgrinder.lua
帮助:manwordgrinder
前面的三个编辑器最初都是考虑到编程/编码而设计的。WordGrinder从一个不同的角度来写作。这是专门为作家设计的文字处理器。它有易于使用的菜单,箭头键像你期望的那样工作,这里很少有惊喜。您可以在文本中轻松地将单词加粗或斜体,并且您不需要学习Markdown或任何特殊的编码。
另一方面,与Emacs或Vim不同,它的可定制性不强;它来的时候就很管用。没有任何插件或花哨的主题。它很简单,但使用起来很可靠和简单,而且它很简单,如图6-4所示。
图6-4
WordGrinder文字处理器,带有易于查找的菜单
我的建议是先看看Nano和WordGrinder。Nano非常适合快速和肮脏的文本编辑,而WordGrinder可以处理大多数真正的写作任务。如果你决定真的想成为一名“文本大师”,那么升级到更强大和更灵活的Vim和/或Emacs——它们提供更多,但也需要相当多的努力才能真正掌握。
电子邮件可能是当今大多数计算机的主要商业用途,是一个至关重要的工具。然而,由于黑客和垃圾邮件发送者的盛行,电子邮件的安全性是一个主要问题。这使得设置电子邮件客户端成为我们将要遇到的最具挑战性的任务之一。
发送邮件详情:
安装:sudoaptinstallsendmail
运行命令:sendmail
Dotfile:里面的各种文件/etc/mail
帮助:mansendmail
这个应用通常有点不确定。众所周知,Sendmail是一个很难安装的应用,由于存在被黑客攻击或滥用的可能性,最好还是交给专家来安装。Raspbian的默认安装不包含Sendmail,但是其他发行版可能已经安装并配置了Sendmail,所以值得一试。只需在文本文件中键入一条消息,保存它,然后键入类似如下的内容:
sendmailuser@example.com sendmail-tuser@example.com然后在下面输入你的信息。按Ctrl-D发送消息,或按Ctrl-C中止。这要么有效,要么无效,这取决于您运行的Linux发行版。我再次建议,如果这不是你开箱即用的“工作”,你可以选择其他选项,因为这是一个强大但配置起来非常复杂的应用。 杂种狗详情: 安装:sudoaptinstallmutt 运行命令:mutt 点文件:~/.muttrc 帮助:manmutt Mutt(以及下文中的Alpine)是一个比Sendmail更完善的电子邮件客户端。你有一个完整的界面来搜索、分类、阅读和回复你的邮件;而且很容易处理多个文件夹和邮件附件。选择哪个取决于你需要什么,你觉得哪个更有吸引力,更有用。他们做的事情几乎一样。 我发现Mutt的一个主要缺点是它以纯文本的形式将密码存储在配置文件中。如果有人进入你的系统,他们可以很容易地看到你的电子邮件密码,给你带来一大堆麻烦。你可以使用Mutt并让它不存储密码,但这样你就需要在每次加载Mutt时重新输入你的电子邮件密码,这至少可以说是不方便的。 尽管如此,对于一个基于文本的应用来说,它还是很有吸引力的,包括一些屏幕菜单选项,并且设置起来也不太难。图6-5显示了一封来自我博客的邮件。 图6-5 Mutt电子邮件客户端 高山详情: 安装:sudoaptinstallalpine 运行命令:alpine 点文件:~/.pinerc 帮助:manalpine Alpine没有Mutt那么容易定制,但它能够在服务器上存储加密的密码。如果你有一个远程系统(也就是说,你用SSH连接到它)并且你不想每次都被输入你的电子邮件密码所困扰,这是一个更好的选择。它也可以通过菜单在应用中进行配置,而Mutt依赖于如何修改“点文件”,我们将在稍后讨论。图6-6会给你阿尔卑斯山菜单方面的提示。 图6-6 Alpine电子邮件客户端 写作和电子邮件对我们大多数人来说是件大事,但大量有用的工作也涉及数字和演示。在GUI世界里,有微软的Excel和PowerPoint,甚至还有LibreOffice。那些在命令行上不起作用,所以我们需要找到类似的东西。 SC详细信息: 安装:sudoaptinstallsc 运行命令:sc 点文件:~/.scrc 帮助:mansc SC是屏幕计算器的缩写,也称为文本模式的电子表格。它做所有像Excel这样的电子表格所做的基本工作,但都是通过键盘和文本屏幕来完成的。它希望以CSV(逗号分隔值)格式保存所有文件,但可以读取Excel文件。它允许文本左右对齐、剪切和粘贴、各种十进制格式选项以及大量的计算和数学功能。它不像GUI电子表格那样漂亮,但是它的功能无处不在。如果你记得VisiCalc或Lotus1-2-3的日子,这将带回美好的回忆或噩梦。 最初的SC程序创建于大约13年前;SC-IMfork仍在开发和维护中,因此即使它看起来像是直接来自80年代,但它是安全的,维护得很好。图6-7显示了对一列数字进行求和平均的简单计算。 图6-7 SC电子表格计算器 sudoaptinstallsc您可以通过以下链接了解更多信息: 在Windows和Mac的世界里,PowerPoint、Keynote、Impress甚至谷歌幻灯片都可以用来演示。幻灯片演示需要图形,所以基于文本的演示在大多数时候可能不是最好的方式。尽管如此,有时你想做一些事情只是为了显示你能做一件事,所以这里有你的展示选项:比默、维姆迪克和MDP。 Beamer本身并不是一个app;这是LaTeX的一个扩展(见第七章第),允许你使用文本编辑器创建一个文件,然后输出为PDF格式,可以在投影仪上显示,打印出来,或通过电子邮件发送给收件人。它允许彩色文本、图形、图表以及LaTeX支持的基本上任何类型的媒体。它不做任何类型的动画,因为它以PDF格式输出,但任何静态图像都可以使用。 投光器详情: 安装:sudoaptinstalllatex-beamer(注意:需要已经安装了texlive-full和texmaker) 运行命令:loadtheoutputintoyourPDFviewer 点文件:none Vimdeck是一个工具,它允许你使用Markdown编写一个文件(参见第七章)并将其编译成一个可以使用Vim查看的演示文稿。您不必使用Vim来创建文件,但是最终的表示已经过优化,可以在Vim中使用。图6-8中的“幻灯片”实际上只是显示在Vim中的一个大文本文件中的一页。 图6-8 Vimdeck演示 videck详细资料: 安装:sudogeminstallvimdeck 运行命令:vimdeck 帮助:vimdeck MDP是一款以文本形式运行演示文稿的应用。Beamer和Vimdeck是创建演示文件的工具,而MDP采用降价文本并进行实际的演示(见图6-9),有许多漂亮的选项,包括颜色、引用、标题、嵌套列表和许多其他基于文本的(仍然没有图形)元素。 图6-9 MDP演示 MDP详情: 安装:sudoaptinstallmdp 运行命令:mdp 帮助:manmdp 快速记笔记是GUI操作系统擅长的事情之一,但是有时您需要复制一些文本以备后用,或者下次记详细的笔记,并且您不想离开命令行。我们将在这里看看两个主要的参与者:TerminalVelocity是一个应用,它可以非常快速地记下和找到基于文本的笔记,而EmacsOrg-mode是一个大纲视图、调度程序、待办事项管理器,以及内置于文字处理器Emacs中的完整组织系统。 TerminalVelocity的安装与我们看过的其他应用不同,因为它不在Raspbian的存储库中。我们将使用一个名为Pip的应用来安装它。 终端速度详情: 安装:sudopipinstallterminal-velocity 运行命令:terminal_velocity 点文件:~/.tvrc 帮助:seewebsite 我们已经在“编写工具”一节中讨论了Emacs,但是这里值得再提一下。“Org-mode”是Emacs提供的一种特殊模式,它允许您键入被视为某种大纲的文本。你用类似Markdown的格式写文件;但是您也可以使用Tab键快速折叠或展开大纲树,上下移动整个部分,并快速创建待办事项列表、大纲和各种笔记。如果您已经对Emacs有所了解,那么开始使用Org-mode是很容易的,但是您可以用它做的事情太多了,因此选项会变得很广泛。 图6-10显示了我6月13日的待办事项清单。即使不解释待办格式在Org-mode中是如何工作的,你也能准确地理解文件中发生了什么。 图6-10 Emacs组织模式文件 Pass是一个密码管理系统。它可以跟踪数千个网站和密码的数据库,在创建安全密码方面特别有用。您可以请求一个新的密码,指定符号的数量,它会完全随机地生成您需要的内容,并将其复制到剪贴板。 这种应用非常有用。我已经从弱密码,如 USER:brianschellPASSWORD:PENCIL(orthecat'snameorsomething)到 USER:brianschellPASSWORD:zagw@JPTfVquVkQjvAetx2ZiA显然,像这样的密码很难记住,或者说很难输入;幸运的是,Pass会为您将密码复制到剪贴板中。 通行证详情: 安装:sudoaptinstallpass 运行命令:pass 帮助:manpass r当前详情: 安装:sudoaptinstallrtorrent 运行命令:rtorrent 点文件:~/.rtorrent.rc 帮助:manrtorrent 为了下载通过torrent分发的文件,你需要一个torrent客户端。对于GUI来说,有很多好的方法(我们已经讨论过洪水),但是有时候从命令行来做也不错。我们将在这里看一个名为rTorrent的应用。 通过在命令行键入rtorrent来启动rTorrent应用。然后以全屏模式运行,如图6-11所示。 图6-11 r当前以全屏模式运行 接下来,点击回车键,它会在屏幕下方给出提示load.normal>,如图6-12所示。 图6-12 添加。种子文件 您需要确保准确无误地键入(或剪切和粘贴)整个文件名。点击Enter,文件将出现在屏幕的主要部分,即活动种子列表中,如图6-13顶部所示。 图6-13 添加了一个种子的rTorrent 您可以添加尽可能多的。种子文件,因为你希望这样做。如果你想处理的话,rTorrent可以轻松支持数百个种子。你可以用上下箭头键在种子列表中移动来选择单个种子。 Ctrl-O改变目标目录。我更喜欢~/下载,但是你可以把你的文件放在你喜欢的任何地方。默认为用户的根目录。 Ctrl-S开始下载。你可以观察屏幕底部的数字和统计数据,了解事情的进展情况。 Ctrl-D暂停下载。如果您再次按Ctrl-D,下载将被删除。 Therightarrow允许您获取正在下载的文件的信息。 允许你关闭一个种子。 等等——在文本模式下浏览网页?是的,你可以! 以下三种浏览器已经存在了几十年,并且都有能力处理大部分是文本的网站。有些允许通过外部查看器查看图像,而有些允许使用插件在线查看图像。没有一个像现代的GUI浏览器一样健壮或漂亮,但是它们经常能完成任务。 使用文本模式浏览器有一些好处。首先,与图形浏览器相比,它们的速度非常快——它们不运行嵌入式JavaScript代码,也不下载所有这些图像(包括不可见的跟踪图像)。因为他们所做的只是下载文本,所以即使在一个缓慢的系统上,他们也很快。此外,因为它们是纯文本的,所以可以很容易地与文本到语音转换软件集成,并且非常适合视觉障碍者。 谷歌详情: 安装:sudoaptinstallgoogler 运行命令:googler 点文件:(none) 帮助:mangoogler 有时你不想打开一个完整的网络浏览器在Google上查看一些东西,但是在GUI世界里,这是唯一的方法。命令行就不是这样了!小应用“谷歌人”会让你在命令行上输入你的搜索短语,它会向你显示多个搜索结果,并附有谷歌搜索结果的简短摘要。如果你看到你想要的东西,你可以选择在浏览器中加载它。 Lynx详细信息: 安装:sudoaptinstalllynx 运行命令:lynx 点文件:~/.lynxrc 帮助:manlynx 这是最老的浏览器,因为它是1992年作为一个项目开始的。由于这种长寿,它相当稳定和安全。它不适用于需要JavaScript的网站,但可以处理带有cookies的网站。 如图6-14所示,它可以获取一个普通的网站,去掉图形元素,重新格式化所有内容,使其完全显示在基于文本的屏幕上。这与某些辅助技术允许盲人使用网络非常相似,因为生成的文本可以很容易地导入屏幕阅读器。 图6-14 Lynx浏览器 W3M详情: 安装:sudoaptinstallw3m(Raspianpreinstalled) 运行命令:w3m 点文件:~/.w3m/config 帮助:manw3m W3M也很老了,始于1995年。它在合适的终端上支持表格、框架、SSL连接、颜色和内嵌图像。通常,它以尽可能真实的形式呈现页面的原始布局。W3M是维护比较活跃的浏览器之一,有很多扩展和插件,所以如果你需要做很多基于文本的web使用,这可能是最好的选择。 图6-15显示了与图6-14的Lynx浏览器相同的网站的W3M渲染。比较不同之处。 图6-15 W3M浏览器 电子链接详情: 安装:sudoaptinstallelinks 运行命令:elinks 点文件:~/.elinks 帮助:manelinks 这是三款浏览器中最“现代”的一款,如图6-16所示。它有一个彩色显示屏,当你按下Esc键时,会出现导航菜单,使整个事情更容易理解。它支持鼠标、标签、cookies等等。 图6-16 伊琳的浏览器 当互联网开始对每个人开放时,最流行的事情之一就是去IRC聊天室。在脸书之前,在Twitter之前,甚至早在MySpace之前,就有了IRC(互联网中继聊天)。 WeeChat详情: 安装:sudoaptinstallweechat 运行命令:weechat 点文件:~/.weechat 帮助:manweechat 详细信息: 安装:sudoaptinstallirssi 运行命令:irssi 点文件:~/.irssi/config 帮助:manirssi 信不信由你,IRC仍然非常受欢迎,而且仍然很强大,尤其是在技术社区中。有很多方法可以进入IRC,甚至是通过命令行。这里介绍的两个应用WeeChat和IRSSI都在积极开发中,并且发展势头良好。图6-17显示的是WeeChat,但是两个app都和图片差不多。 图6-17 IRC客户端WeeChat 两者都提供了脚本、插件、主题、过滤器、帮助屏幕,以及你需要开始的一切。 大多数命令行应用都是几十年前创建的应用的积极开发版本。社交媒体是一个相对较新的计算领域,命令行在这方面还有很长的路要走。此外,大多数社交媒体网站严重依赖图形,显然,这不是文本模式的最佳匹配。尽管如此,还是有一些不错的应用,记住,如果有必要,你可以通过基于文本的网络浏览器轻松访问大多数社交媒体网站。 彩虹流详情: 安装:sudopipinstallrainbowstream 运行命令:rainbowstream 点文件:~/.rainbow_config.json 帮助:Hit"h"intheapp 你不会认为Twitter客户会很难获得,但只有一个我可以真正推荐:彩虹流。它很容易安装和配置,它允许你发布和缩小到列表视图流,并做几乎任何你想用Twitter做的事情。 没有一个“常规的”脸书命令行客户端,但是你可以通过任何基于文本的网络浏览器使用他们的网站。然而,脸书信使有一个命令行客户端。 sudoaptinstallnpmsudonpminstall-gfb-messenger-cli图形、艺术和照片你不会想到图形和艺术甚至会是文本世界中的一个类别,但是有一些优秀的工具可以处理图像,甚至是在文本模式下。Asciiview只是一个有趣的应用,只使用文本字符创建“图片”。FIGlet是一个有趣的小东西,可以让你创建文本横幅,而ImageMagick是一个巨大的工具,几乎可以做任何事情,包括改变图形格式和编辑图片——甚至不用看它们。 查看详情: 安装:sudoaptinstallaview 运行命令:aview 帮助:manaview 多年来,我们的相机一直在宣传越来越多的百万像素。有时候,偶尔反过来寻找可能的最低分辨率会更有趣。其中一种情况是当您需要在纯文本终端上显示照片或图形图像时。 完成这项工作的一种方法是使用Asciiview。图6-18是我通过Asciiview运行的照片,然后转换成文字符号。如果你仔细看,你会发现根本没有图形字符;只是字母、数字和符号。 图6-18 作者在Asciiview中的照片 要转换图像,请键入 aviewmyphoto.bpm菲戈莱特小图详情: 安装:sudoaptinstallfiglet 运行命令:figlet 帮助:manfiglet FIGlet只是一个小的命令行工具,用于获取一行文本并从中制作一种文本“横幅”。您可以根据需要输入单个单词或整个句子。例如, figletBrian将会回来 _____|__)___(_)______|_\|'__||/_'|'_\||_)||||(_||||||____/|_||_|\__,_|_||_|简介ImageMagick详情: 安装:sudoaptinstallimagemagick 运行命令:convert,identify,mogrify,compare,montage,composite,display,andsoon.这是一套命令。 帮助:manimagemagick 前面两个Ascii应用都只不过是玩具。有时你需要实际做一些图形工作,为此,有ImageMagick。 它包括创建、编辑、合成或转换位图图像的工具。它可以读写200多种格式的图像,包括PNG、JPEG、GIF、HEIC、TIFF、DPX、EXR、WebP、Postscript、PDF和SVG。 您可以使用ImageMagick来调整图像大小、翻转、镜像、旋转、扭曲、剪切和变换图像、调整图像颜色、应用各种特殊效果或绘制文本、线条、多边形、椭圆和贝塞尔曲线。 ImageMagick命令行工具非常简单,它将jpg格式的图像转换为png格式的图像: convertimage.jpgimage.png或者它可能非常复杂,有过多的选项,如下所示: convert-delay100-size100x100xc:SkyBlue-page+5+10balloon.gif-page+35+30medical.gif-page+62+50present.gif-page+10+55shading.gif-loop0animation.gif音频和视频屏幕上只有文字,电脑有时会变得很无聊。幸运的是,你不必坐在那里默默工作。早在GUI界面出现之前,计算机就已经在播放音乐了,你可以用命令行工具来播放你所有的音乐。使用这些工具,创建播放列表和自动播放音乐实际上更加容易。如果你想一边工作一边看电影,那也是完全可能的。 RaspberryPi拥有优秀的音乐播放硬件,无论是通过音频插孔还是通过HDMI。命令行有许多优秀的(和非常可定制的)音乐播放器。我最喜欢的两部电影是MOC和CMUS。 MOC细节: 安装:sudoaptinstallmoc 运行命令:mocp 点文件:~/.moc/config 帮助:manmoc 我喜欢这个,尤其是当我处理播放列表的时候。它有两列,默认布局看起来很像午夜指挥官应用。如图6-19所示,您可以在左侧窗格看到您的音乐文件,而您正在处理的播放列表位于右侧窗格。选择一个文件并“添加”到列表中,你可以直观地看到你在做什么。它是主题化的,内置了均衡器,按键可以根据你的喜好重新映射,甚至支持互联网流。它有一个方便的帮助屏幕;只需点击“H”,所有的命令都会自动弹出。 图6-19 控制台上的音乐 用mocp运行MOC播放器(注意末尾的p)。 CMUS详细资料: 安装:sudoaptinstallcmus 运行命令:cmus 点文件:/usr/share/cmus/rc 帮助:mancmus 图6-20 CMUS(C音乐播放器) CMUS从默认安装就支持大部分音乐格式:OggVorbis、MP3、FLAC、Opus、Musepack、WavPack、WAV、AAC、MP4、音频CD,以及ffmpeg支持的一切(WMA、APE、MKA、TTA、SHN等。)和libmodplug。如果你从各种渠道获得音乐,那么能够不担心你的格式被理解是一个很好的加分。 用sudoaptinstallcmus安装。 MPD详情: 安装:sudoaptinstallmpd 运行命令:mpd 点文件:/etc/mpd.conf 帮助:manmpd 之前的两个项目,MOC和CMUS,都是全屏应用,严重依赖于视觉导航文件和目录。这两个界面都受到了文件管理系统的启发,并且都至少在某种程度上与它们的控件进行了交互。 另一种选择是音乐播放器守护进程,或MPD。这是一个灵活、强大的服务器端音乐播放应用。通过插件和库,它可以在受其网络协议控制的同时播放各种声音文件。因为它是一个守护进程,它只是在后台安静地运行并等待来自外部客户端程序的命令。 **MPC是并行客户端应用。它连接到MPD,并根据传递给它的命令和参数来控制它。如果没有传递参数,则给出当前状态。它完全是一个命令行工具,没有任何视觉效果。 然而,有许多其他的客户端与MPD服务器一起工作。有些是图形化的,有些是用于Web的,而有些是用于控制台的。设置起来有点困难,但是它非常灵活和强大。 实际上,MPD的要点是,通过客户机/服务器架构,您可以在家中安装一台存储了所有音乐文件的机器,然后从网络上的其他计算机访问和播放这些音乐,而无需将音乐文件存储在多个地方。 电影明显是视觉化的。Unix早期的老式终端和计算机无法播放视频文件,因为显示器无法处理。而你的树莓派,可以轻松播放电影。型号4Pi甚至可以处理双4K输出。这些系统可以播放视频,你没有理由不能从命令行播放你的电影。 MPlayer详细资料: 安装:sudoaptinstallmplayer 运行命令:mplayer Dotfile:里面的各种文件/etc/mplayer/ 帮助:manmplayer MPlayer是一个可以在许多系统上运行的电影播放器。它播放大多数MPEG/VOB、AVI、Ogg/OGM、VIVO、ASF、WMA、WMV、QT、MOV、MP4、RealMedia、Matroska、NUT、NuppelVideo、FLI、YUV4MPEG、FILM、RoQ和PVA文件,受许多本机、XAnim和Win32DLL编解码器支持。你可以观看视频光盘,SVCD,DVD,3ivx,DivX3/4/5,WMV,甚至H.264电影。 在大多数情况下,您可以在全屏模式或窗口中欣赏电影。图6-21中有一个电影片头的截图。 图6-21 左边是多玩家状态,右边是多玩家影片 尽管如此,你可能还是更喜欢用VLC这样的应用在GUI中观看你的视频(在别处讨论过),但是如果你需要的话,知道你有能力在命令行上观看还是很好的。 新闻大部分是文本,所以认为有很多方法可以在命令行上获取新闻并不是一个巨大的飞跃。这里有两个很好的开始方式: 即时新闻详情: 安装:sudopipinstallinstantnews 运行命令:instantnews 点文件:None 帮助:maninstantnews Haxor-新闻详情: 安装:sudopipinstallhaxor-news 运行命令:hn Dotfile:里面的各种文件~/.haxornewsconfig 帮助:hn--help 一个稍微更“有趣”的类似新闻节目是Haxor-News。Haxor-News将黑客和书呆子新闻带到终端,允许您在不离开命令行的情况下查看和过滤以下内容: 一旦你进入,你可以输入各种以“hn”开头的命令,比如hntop来显示当前的头条新闻。图6-22显示了输出的示例。 图6-22 haxor-新闻头条 一旦你找到一个你想读的故事,输入hnview#来查看这个特定的故事。图6-23显示了我进入“hnview10”后得到的结果 图6-23 新闻船详情: 安装:sudoaptinstallnewsboat 运行命令:newsboat 点文件:~/.config/newsboat/config 帮助:mannewsboat 图6-24 Newsbeuter/Newsboat源列表 有很多实用程序可以从命令行获取天气信息,所以这里有一些有趣的应用: 对于生活在支持城市的幸运的人,你可以简单地输入 sudoaptinstallfingerfingercity@graph.no在命令行中,将您的城市名称替换为命令中的“city”,结果类似于图6-25。 图6-25 获取纽约市的天气信息 fingernewyork@graph.no或者,您可以简单地键入 curlwttr.in/your_location在命令行中,用您的城市名称替换命令中的“your_location”。 例如,如果我输入 curlwttr.in/flint输出将产生类似图6-26的结果。 图6-26 获取密歇根州弗林特的天气信息 Ansiweather详细信息: 安装:sudoaptinstallansiweather 运行命令示例:ansiweather-lFlint-uimperial-f3-strue 点文件:~/.ansiweatherrc 帮助:manansiweather 前面的示例run命令查找Flint的天气,并以英制单位(即非公制单位)连同天气符号一起报告3天的天气。如图6-27所示,前面的Ansiweather命令输出一行所有信息。 图6-27 密歇根州弗林特市的安西韦特 这是我们正在处理的文本模式,所以显然你可以在上面阅读文本。我们已经在前面的章节中讨论了文本编辑器,它们对于简单地阅读文本来说都是很棒的。但是,有时您需要读取非文本格式的文件。诸如EPUB、MOBI、中国等电子书格式都需要专门的阅读器;我们现在来看看如何访问这些。 普鲁伯详细资料: 安装(作为一行键入): 运行命令:epr 点文件:无 帮助:epr--help 通常,从命令行读取是通过文本编辑器完成的,比如Vim、Emacs甚至Nano。尽管如此,越来越多的书籍以电子书的形式出现。安装完成后,只需输入 epubFILENAME.epub电子书(EPUB格式)将显示在屏幕上。这些说明很容易理解。 机芯详情: 安装:sudoaptinstallcalibre 运行命令:calibre(orcommandinthefollowing) 点文件:通过菜单在应用中设置 帮助:mancalibre 其他电子书格式,如。mobi,。哎呀,还有。prc,需要转换为。epub或文本格式。在图形用户界面中,最常见的方法是使用应用Calibre。既然我们在这里讨论命令行工具,那么Calibre的大部分特性都不可用,但是Calibre确实有几个强大的命令行工具。 一旦你安装了Calibre,如果你愿意,你可以使用它的图形界面(如图6-28),但是如果你想从命令行完成所有的工作,可以看看Calibre旁边安装的命令行工具。 图6-28 桌面上的Calibre 记录的命令: 可能最有用的是电子书转换。例如,如果您在中有一个电子书文件。mobi格式,你想把它改成。epub格式,只需输入 ebook-convertmyfile.mobimyfile.epub-h真的很快,输出看起来很完美。然后你可以使用EPUB阅读器来读取文件。 有许多用于日历、日程安排和任务管理的命令行工具。以下是我的最爱: 追溯到最初的Unix系统的早期,有一个古老的cal命令。它显示一个月历,突出显示今天的日期。我不知道这些年来我用了多少次。除了显示月份,它并没有为做任何特别的事情,但是它仍然非常方便。 它是操作系统的一部分,所以你不需要安装任何东西。只是打字 cal计算器计算详情: 安装:sudoaptinstallcalcurse 运行命令:calcurse 点文件:~/.calcurse/中的各种文件 帮助:mancalcurse Calcurse是一个可视化的、基于文本的日历、计划程序和命令行的待办事项管理器。它在底部两行列出了命令,很像Nano编辑器,通过按“o”键可以获得附加命令。它允许自定义颜色、三个主要窗口窗格的布局,以及其他一些您可以选择的内容。如果你不担心你的电脑和其他设备之间的同步,这可能是最好的方法。图6-29有一个很好看的截图。 图6-29 计算器 如果你担心在设备之间同步你的约会和任务,这个过程比Calcurse更复杂,但是允许在任何设备上使用。这个概念很简单:一群用户聚在一起,创建了一个标准化的文本文件格式,可以包含所有的待办事项和约会。然后,你使用Dropbox等文件同步系统,让你的电脑、手机、平板电脑和其他任何你使用的设备都可以使用该文件。这个系统设置起来很容易,很可靠,而且非常灵活。 如果我刚才描述的东西对你有吸引力,那么现在就想尽一切办法去做,设计你自己的方法和系统。在手机的Dropbox中放一个todo.txt文件,并设置电脑访问该文件。你们都准备好了! 或者你可以使用一个已经存在的系统来完成所有这些工作。有一个完整的在线社区围绕这个概念建立起来,他们提出了他们认为是todo.txt文件的“标准”。这些组织的主页位于 他们制定的具体“规则”载于 您可能会问,“为什么要使用如此复杂的规则来简单地管理文本文件中的待办事项列表?”答案是,如果你使用他们的标准化格式,那么你就可以利用各种支持这种格式的应用。如果你不关心这些应用,那么你可以用文本编辑器管理你的文件。 todo.txt-cli位于 图6-30 SwiftoDoforiPhone 基于Linux的编程和编码工具的选项和可用性几乎是无限的。几乎每种计算机语言编译器都可以作为命令行工具使用,而且,在表面之下,甚至大多数GUI编程工具只是在后台运行命令行工具。进入编码领域的最佳方式是选择一个文本编辑器程序,比如Vim、Emacs或类似的程序,然后开始研究各种语法工具和特定于编程的插件。 所有主要的文本编辑器都被开发人员大量使用,主要是因为它们的可定制性、插件功能和速度。你选择哪个编辑器很大程度上取决于你的品味和你想花多少精力去学习它;完全有可能只使用Nano来输入代码,然后在命令行上使用您选择的语言来编译它,但是大多数编码人员会想要更多的东西,并且会很快进入Emacs或Vim(尽管也有其他优秀的选择)。我甚至无法开始了解如何在开发世界中使用这些高级编辑器,所以我不会。请记住,在文本模式下编码和在GUI环境下工作一样有效,如果不是更多的话。 安装命令行软件不再是完成工作的唯一选择。互联网上还有无数免费或付费的网络应用。有些人只使用Chromebook作为他们的主要计算机就可以很好地生存,直到最近,这些机器只使用网络应用,我们在本书中看到他们几乎是事后想起的。许多高级网站严重依赖于JavaScript和其他脚本语言,这些语言在基于文本的浏览器中不能很好地工作(或者根本不能工作),但是有些在文本模式中工作得很好。 有一些命令行工具可以访问许多基于web的服务。Todoist是一个非常受欢迎的待办事项列表管理器,在大多数移动设备上都非常好用,至少有一个好的命令行界面。todo.txt系统是另一个在手机/GUI和文本之间实现同步的系统。 有时候工作的最佳工具并不是你想让使用的工具。有时候,GUI确实是更有效的做事方式。绘图和视频工作是两个很好的例子,图像密集型的web开发也是如此。大多数视觉游戏编程都需要GUI。另外,一些现代工具只能在窗口系统下工作,甚至不能从命令行使用它们的功能。有时候你需要一个GUI来完成事情。 哑终端和基于文本的电传打字机的时代早已成为过去。怀旧和极简主义是令人愉快的,但电脑已经超越了这些东西是有原因的。如果您使用SSH在服务器上运行命令行工具,那么您可以通过这种方式完成许多功能强大的事情,但是如果您将这种功能与GUI系统所能提供的最好工具结合起来,那不是更好吗?有时候,你可能会发现自己在遵循一个十步过程来完成一些你可以用不同的工具在一个步骤中完成的事情。 我的观点是,既然你已经学会了如何在文本模式下做几乎所有的事情,是时候选择最适合你的方式,将这些工具与你的桌面软件一起使用了。如果您一直在Raspbian机器的终端窗口中运行命令行,或者从Mac通过SSH-ing进入您的Pi,那么您已经在这样做了。Linux上的Terminator或者Terminal是一回事;您正在GUI中运行终端屏幕。那不是“出轨”;那是做这件事的聪明方法。 例如,写一本书是一项需要两种工作方式来完成的任务。继续用LaTeX或Markdown用Vim写这本书。使用Git的命令行版本来管理您的版本。用Pandoc编译成PDF。但随后使用一些图形应用(如Okular)来查看生成的PDF。这被称为“为正确的工作使用正确的工具”,是完成项目最有效的方法。如果你找不到你喜欢使用的命令行PDF查看器,那就不要这样做。一切都是为了以最高效、最愉快的方式完成工作。工作中挂念是可以的;只是不要被工具所束缚。 了解如何从终端窗口剪切并粘贴到图形窗口中。了解如何将文件从您的主目录复制到图形桌面的桌面上。有时使用Ranger浏览文件系统比使用文件管理器更容易,有时则相反。 我已经提供了两个任务列表,我认为这两个列表更适合其中一个方法(表6-1)。你可以从一边或另一边做所有这些事情;这些正是我觉得更好的。你的观点可以自由改变。 表6-1 命令行与GUI 最好从命令行开始 在图形环境中更好 ||---|---||Mutt代表电子邮件|PDF和漫画阅读||使用Vim或Emacs进行文本编辑|复杂的桌面出版布局||Ranger/MC用于文件操作|绘画和图形创作||音乐和播放列表创建|大多数游戏||文件备份、大规模文件传输和大型下载|网页浏览| 我在这里的观点是命令行不一定是一种“生活方式”这是你计算机能力宝库中的又一个工具。通过学习命令行和一些更有用的工具,您可以在一个更加可定制的环境中获得更快、更强大的方法,通常使用功能不太强大的设备。这整个概念是为了好玩,而不是坐牢。 有些任务,如视频和音频编辑,确实需要使用图形模式和鼠标。也就是说,大多数任务从命令行运行都很好。它们可能不具备大多数桌面应用所具备的所有漂亮的功能,但它们通常更具可配置性,更易于访问,并且具有极其先进的自动化可能性。没有GUI提供的所有简单菜单,只需要弄清楚它们是如何工作的。 在下一章,我们将会看到一些高级的主题和不适合其他地方的东西。我们已经讨论了Markdown和LaTeX,我们将快速介绍这些工具,然后看看如何使用点文件和配置文件定制您的命令行应用。我们将看看您可以在网上找到的一些其他资源。 最后,我们来看一些项目,你可以使用一个备用的树莓Pi来处理那些需要专用机器的项目。我发现RPi非常便宜,每次他们有重大升级时,你都会买一个新的。我最近看了看,我有五个孩子躺在那里!** 本章涵盖的主题是从命令行或GUI工作时要考虑的有价值的选项——或者在许多情况下两者都要考虑。 首先,我们讨论Markdown和LaTeX,这两种描述文本的“语言”允许更容易地转换成其他格式。Markdown可以在半小时内学会,而LaTeX要复杂得多,但也灵活得多。一般来说,如果你是为EPUB或者HTML写基于网络的发布,我会推荐学习Markdown。如果你是为PDF或印刷出版写作,我会考虑LaTeX,但是两者之间有很多交叉。 第二,我们看看通常所说的“点文件”我已经多次提到文本应用是非常可定制的,但我们并没有真正深入研究它。点文件是存储每个应用的配置信息的地方;像键映射、配色方案、插件和大多数其他定制都是通过编辑这些文件来完成的。 第三,我将带您浏览我的Vim编辑器的dotfile。我绝不是Vim的大师,但是我做了一些基本的定制,可能会吸引一个非程序员。作为一个例子,我将一步一步地向你展示可以做什么样的事情。 然后我们看看如何使用您的RaspberryPi作为其他系统的仿真器。Pi运行Linux,但在里面我们可以运行MS-DOS应用、任天堂游戏,甚至老式的投币式街机游戏。 最后,我提供了一个链接列表,作为进一步研究的“额外资源”,以及一些随着兴趣的增长,如何处理“额外”的RaspberryPi计算机的想法。 在GUI世界中,文字处理器是文档创建之王。微软的Word,苹果的Pages,甚至谷歌的Docs都使得文档的创建变得可视化和简单。另一方面,如果您曾经在Word中迷失在一堆缩进和遗漏的项目符号中,那么您就会知道这些视觉格式有多么令人沮丧。许多作家选择使用文本编辑器而不是文字处理器。使用文本是一件喜忧参半的事情。你可以完全控制你的文字和数据的每一个方面,但这是以更高的学习曲线为代价的。这听起来很熟悉,不是吗? 我在“写作工具”部分提到过WordGrinder。据我所知,对于纯文本系统来说,这是最接近“文字处理器”的东西。它允许你使用粗体、下划线和一些其他格式的东西;但它远不如任何GUI文字处理器健壮或强大。可靠,易学;对你来说可能就够了。 另一方面,如果你写了很多东西,或者需要更精确的格式,有两个非常流行的描述文本格式的系统:Markdown和LaTeX。你决定学习哪一种取决于你写作的类型以及你想要的输出类型。 另一方面,LaTeX散布着大量的标记和括号,通常有更多的“开销”也就是说,开销和复杂性允许打印布局具有基本上无限的灵活性——自从计算机首次用于打印以来,使用LaTeX排版的书籍比任何其他方法都多。 当然,Markdown和LaTeX都只是描述文本的“标记语言”,与HTML非常相似。这两种文本语言都是简单的文本文件,可以使用您选择的文本编辑器进行编辑——Vim或Emacs或者甚至可以使用纳米。当然,因为它们只是简单的文本文件,所以根据定义,它们是完全跨平台的。如果有一天你决定回到Windows、Mac或Linux,你可以带着所有这些文件,因为同样的工具也适用于这些平台。iOS,Android,几十年的大型机,每一台还没发明出来的电脑也是如此。 文本文件永远不会“消失”,也不会发生太大的变化,以至于无法被其他东西读取。文字处理格式就不一样了——想想保存在AppleWorks、MicrosoftWorks甚至ApplePages早期版本中的文件,它们都无法在现代文字处理软件中阅读。那些文件基本上已经变得不可读了。 使用文本语言的过程非常简单。您只需使用您最喜欢的文本编辑器输入如下所示的“代码”。记住。md或。您编写的tex文件不是最终文档;它将使用类似Pandoc或LaTeX的应用进行编译,以创建您需要的格式的输出文件:。docx,。pdf、。odt,或者随便你。有几十种输出格式可供您使用。 如果你正在为网络或电子书写作,你可能应该看看Markdown。它很容易转换成HTML和EPUB格式,而且非常容易学习。看一段10分钟的YouTube视频,你大概就能掌握基本知识了! sudoaptinstallpandoc来安装它。要使用它,您可以键入如下内容: pandoc-fmarkdown-tdocxexample.md-oexample.docx这将采用文件example.md(。md表示是markdown文件)并将其转换为example.docx(微软Word文件)。请注意该命令的各种标志和参数: pandoc 主命令 ||---|---||-fmarkdown|从降价形式||-tdocx|到docx格式||example.md|源文件(以md结尾用于降价)||-o|输出||example.docx|输出文件(Word文档以docx结尾)| Pandoc是一个非常强大的转换工具,它支持几十种不同的输入和输出格式。 如果你想用纸来写作,打印输出或书籍或报告(或pdf),你可能想看看乳胶。LaTeX是一个高质量的排版系统;它包括为制作科技文献而设计的功能。LaTeX是科学和数学文档交流和出版的事实标准。它被设计为在20世纪70年代的小型计算机上运行,因此Pi足够强大,可以处理您能想到的任何LaTeX项目。 \documentclass{article}\usepackage{amsmath}\title{\LaTeX}\begin{document}\maketitle\LaTeX{}isadocumentpreparationsystemforthe\TeX{}typesettingprogram.Itoffersprogrammabledesktoppublishingfeaturesandextensivefacilitiesforautomatingmostaspectsoftypesettinganddesktoppublishing,includingnumberingandcross-referencing,tablesandfigures,pagelayout,bibliographies,andmuchmore.\LaTeX{}wasoriginallywrittenin1984byLeslieLamportandhasbecomethedominantmethodforusing\TeX;fewpeoplewriteinplain\TeX{}anymore.Thecurrentversionis\LaTeXe.%Thisisacomment,notshowninfinaloutput.%ThefollowingshowstypesettingpowerofLaTeX:\begin{align}E_0&=mc2\\E&=\frac{mc2}{\sqrt{1-\frac{v2}{c2}}}\end{align}\end{document}要安装LaTeX编译器,请键入以下内容。请记住,TexLive的下载和安装量非常大,所以在安装之前,请确保您的SD卡或硬盘上至少有2GB的磁盘空间: sudoaptupdatesudoaptinstalltexlive-fullsudoaptinstalltexworks如果您认为您不需要texlive-full软件包中提供的非常高级的工具,您可以用下面的内容代替上面的第三行: sudoaptinstalltexlive此外,如果您没有特别喜欢的文本编辑器,可以安装Texmaker,这是一个专门为使用LaTeX而设计的编辑器: sudoaptinstalltexmaker在第四章中有对Texmaker的简短描述。如果你喜欢更图形化的选项,有完全在线的、基于云的LaTeX编辑器。看看Overleaf.com,这无疑是最好的例子。它在Pi的Chromium浏览器上也能很好地工作,你不需要安装任何东西就能让它工作。它甚至会把你写的东西储存在云端,所以你不用担心会丢失任何东西。 在整本书中,我一遍又一遍地提到了如何定制一切,但我并没有触及如何进行定制。一些基于文本的应用有下拉菜单和设置,可以像基于图形的应用一样进行调整。如果是这样的话,那么你可能已经知道如何去做了。 更有效的方法是编辑“点文件”这些文件包含设置、变量和字段,可以使用Vim、Emacs甚至Nano之类的文本编辑器进行更改。这些文件通常以应用本身命名,只是它们以句点开头(因此称为“点文件”),有时它们会在末尾添加“rc”。一些例子可能是 -vim的 。编辑器 。muttrc公司 .tmux.config文件 。配置 以下内容适用于任何种类的Linux。查看特定应用的文档,了解配置文件的存储位置以及如何访问它们。 要了解我所说的内容,请在终端中转至您的主目录,并创建一个完整的目录列表: cd~ls-la您可能需要上下滚动才能看到所有内容,但是会有许多文件以句点开头。这些文件可以编辑、更改,然后保存,以改变应用的永久设置。注意,点文件对于基本的ls命令是“不可见的”,所以你必须使用-la开关来查看它们。如果您使用Ranger或MidnightCommander查看目录列表,它们也可能被隐藏。 每个应用都有不同的规则和设置,我不可能全部解释清楚(即使我全部理解)。最好的方法是在默认状态下使用应用,然后一旦你发现自己在想“我想知道是否有更好的方法……”或“我希望这能以不同的方式工作”,那么就上网(或查看手册文件)并搜索应用的配置选项。很有可能有一个设置或插件可以满足您的需求。大多数应用都非常灵活,但是你会发现大多数命令行/文本模式的应用都没有丰富的内置菜单。 举个例子,我经常使用Vim文本编辑器,并且对它的配置文件做了很多修改。在下一节中,我将回顾一下Vim的dotfile。大多数其他应用都以类似的方式工作。 Vim应用主要通过一个名为的文件进行配置。vimrc。。vimrc文件位于您的主目录中。要编辑它,请键入 nano~/.vimrc如果您还没有.vimrc文件,这将为您创建一个。 当Vim应用启动时,它扫描主目录并查找这个文件。如果它不存在,Vim在自己的通用缺省值下运行,但是如果它存在,它会读取文件并根据配置文件中的内容改变Vim的行为。下面是我的(行号供你参考;真实文件没有那些): 对于一些人来说,掌握并充分利用这些工具的每一点能力和性能是一项严肃的爱好,他们喜欢在网上写下他们的成就。至少,您应该尝试改变配色方案并打开拼写检查——这些都是易于开始的命令。然后一步一步来。我的建议也是不要复制任何人的配置文件——即使是我的。随着需求的增长,自己动手制作。 对于第二个不太复杂的例子,让我们看看终端多路复用器应用Tmux的配置文件。该应用通过一个名为.tmux.conf的文件进行配置。要对此进行编辑,请键入 nano~/.tmux.conf如果您还没有这个文件,Nano将为您创建一个空白文件。以下是我所知道的: source-file"${HOME}/.tmux-themepack/powerline/double.blue.tmuxtheme"#splitpaneusing|and–Bind|split-window-hBind–split-window-v显然,这比Vim配置文件短得多;不是所有事情都超级复杂。 第一行为显示在Tmux屏幕底部的状态行加载颜色主题。通常,Tmux显示一条普通的绿色状态线,但是这条有漂亮的蓝色和一些图形分隔线。它并没有真正做什么有用的事情,但是我喜欢它的样子。 第二行是注释,解释接下来的两行。 第3行将|键“绑定”到水平分割窗口的命令。在我看来,|键就像是将窗口一分为二的垂直切片,所以我认为它比这个动作的默认键更容易记住。 第4行做了同样的事情,将–键映射到垂直分割线。连字符从右到左,这在我看来就像是垂直分割中穿过屏幕的线。我是一个视觉思考者,所以这两个键比默认的键“和%更容易记住。 这就是我的.tmux.conf文件。您能找到的几乎每个应用都有类似的东西,尽管通常没有Vim示例那么精细或复杂。 如果您在根目录中没有看到dotfile,请在~/中查找。config子目录;有时候他们把它们藏在那里。如果两者都不存在的话~/。config或您的/home目录中,查看该软件的文档——它几乎肯定有一些方法来进行永久定制;只是找到文件位置的问题。保留所有自定义点文件的备份也是一个非常好的主意。这样,如果你设置了另一台机器,这些文件很容易获得,而且如果你搞砸了什么,你可以回到以前的工作版本。我知道许多Linux用户将他们所有的点文件保存在Github.org库中,这个项目超出了本书的范围。 乍一看,这似乎是不必要的复杂。当然,从菜单中选择选项会更容易。嗯,如果选择仅限于程序的创建者认为要包括的内容,那是真的。像Vim和Tmux这样的应用允许有无限的各种插件和近乎荒谬的特性。Vim程序员不可能想到包括所有的东西,他们也不想这样做。许多插件都是非常专用的。通过使用完全开放的文本文件进行配置设置,几乎可以创建任何东西。是的,它更复杂,但它的无限可扩展。 我们从一开始就看到有不止一个适用于RaspberryPi的Linux发行版,我们开始讨论Raspbian和UbuntuMATE。还有其他可用的,您可以按照我们在开始时所做的相同过程来尝试它们:下载一个镜像文件,使用Etcher将其写入SD卡(或硬盘),然后配置操作系统。 与RaspberryPi兼容的一些最流行的发行版包括: 尽管如此,还有其他的可能性。对于“全功率”计算机,虚拟计算和模拟器是业余爱好者感兴趣的主要领域。你能在RaspberryPi上运行模拟器吗?你当然可以!模仿旧的视频游戏系统是Pi最常见的爱好之一。 要开始,请下载DOSBox: sudoaptinstalldosbox用dosbox.运行它 图7-1显示了MS-DOSdir命令的输出。 图7-1 提示方块 如果你熟悉MS-DOS,几乎所有的命令都可以工作。复制文件、删除文件、目录列表—都在这里。运行游戏或应用的第一步是将您的个人文件夹中的一个目录“映射”到“DOS”中的C:驱动器。这使得它看起来像是你在你的主硬盘上安装了这些应用。 例如,如果您最近下载了一组存储在~/Downloads/DOS中的游戏,您可以将该文件夹挂载为DOS中的C:驱动器: mountc~/Downloads/DOS现在如果你打字 dirc现在,您应该可以看到Linux驱动器上DOS文件夹的内容。接下来,您将使用cd命令将活动目录更改为包含特定游戏的目录。 cdwarcra~1带我进入“魔兽”目录。然后你可以输入dir来查看文件夹中的所有文件,找到.exe文件,也就是通常是在DOS下的一个可执行文件。对于我正在运行的游戏,可执行文件叫做war.exe。类型 war而且游戏不仅会开始,而且会出奇的好。图7-2为截图。 DOSBox也可以使用点文件进行定制。可以通过键入以下命令来访问它的配置 nano~/.dosbox/dosbox-0.74-2.conf请注意,如果您有较新版本的应用,这可能会有所不同。该文件中需要更改的两个有用的内容如下: 这一节并不意味着是一个DOS模拟器教程,而是一个你可以使用的模拟器的例子。任天堂、GameBoy、Genesis和大多数其他老式街机和游戏机游戏都有类似的模拟器。 图7-2 1994年的DOS游戏魔兽争霸 向后 如果运行旧的PC游戏还不足以娱乐你,你可能想尝试一个专门的仿真发行版,如RetroPie。安装后,RetroPie会将你的Pi引导到一个包含旧电脑、游戏机和视频游戏机的菜单中,然后允许你从这些系统中加载游戏。许多系统都包含仿真器,如下所示: 许多用户将他们的RaspberryPi用作家庭网络和“原始”互联网之间的一种专用中间设备。您可能感兴趣的一些项目如下: 所有这些项目都需要一个专门负责这项任务的Pi,所以你不会想用你的“计算机Pi”来做这些,但是如果你有兴趣为一个第二个或第三个树莓Pi找一份工作,它们可能会让你感兴趣,这比你想象的要常见得多——新的Pi模型似乎出现得非常快,留下了许多备用的“旧”Pi系统来寻找用途。 这就是了。 我们已经购买、构建并组装了我们的小RaspberryPi计算机,我们已经将操作系统安装到SD卡或硬盘上,并且我们已经建立了一个用户帐户。 然后我们学习了Raspbian桌面界面,安装了一堆好玩又强大的app。 然后我们切换到命令行,安装了一系列功能更强大、可定制的工具。 最后,我们看了文本标记语言和.config文件,它们允许无限的定制选项。 我们在这一切中发现了什么?RaspberryPi本质上是一台普通的计算机,只是更小、更便宜,并且可能不像其他一些计算机那样可扩展。尽管如此,它运行Linux并拥有所有必要的输入和输出选项,因此几乎没有什么是它不能完成的。诚然,许多相同的应用比新MacBook上的要慢,但价格只有五十分之一,也许这是一个公平的交易。只有你能肯定地说。