本节我们来了解一些基本的Linux命令(在树莓派上操作),看完之后,当你再面对Linux黑黑的命令框时至少不会不知所措,你可以用这些基本的命令完成一些需要的操作,比如查找、编辑、查看文件,查看基本的系统信息,上传、下载文件。因为树莓派Raspberry PI OS的图形化界面已经比较人性化了,跟Windows界面也很接近,凡是不能双击解决的问题,那就右键再点击解决,所以此处就不再赘述了。图形化界面操作倒腾就行了,不怕,出了问题还可以系统重刷,不然怎么叫折腾呢。

保安三问(图片来源于网络)

当你登录到Linux系统上后,首先就是常说的“保安三问”之人生哲学问题:我是谁?我在哪儿?我要干什么? 这不只是人生哲学问题,当你面对操作系统的时候,这是首先要解决的问题,不然你就什么也做不了了。

1 我是谁?

这个问题通过whoami命令即可获得,如下运行后我们得到pi,即当前的用户。也许有人就问了,我还不知道自己是谁了,这也要单独运行命令么?就像我们之前说的,命令行中@之前的就是当前用户,所以这么说你也可以不用运行命令直接看到。但是当我们有需要通过脚本命令运行时就有必要通过命令行确定当前的用户。

pi@raspberrypi4:~ $ whoami
pi

用户是后续一切操作的前提,Linux系统是一个多用户系统,支持多个用户同时使用,用户名(账号)就是用户在系统中的唯一标识,系统通过账户实现对用户的管理,管理用户的权限、分组等。

Linux系统中的账户包括用户账户(又分为普通用户账户和超级用户账户/管理员账户)和组账户(标准组和私有组)。

2 我在哪里?

这个问题可以通过pwd命令来获得,获取当前用户所在的目录,如下运行得到我们当前所在的位置是/home/pi目录,即根目录home下的pi文件夹下。

在命令提示符中“:”与“$”之间即是当前用户所在的目录,这里有一个~表示当前用户的用户目录,即用户pi的用户目录/home/pi

pi@raspberrypi4:~ $ pwd
/home/pi

Linux系统下的目录结构与我们常见的Windows系统其实都是树结构的,只是目录的功能分类不一样,Windows系统相关运行文件多放在C盘,而Linux系统根目录则是如下:

pi@raspberrypi4:/ $ ll
总用量 80
drwxr-xr-x 2 root root 4096 5月 27 12:01 bin
drwxr-xr-x 4 root root 3584 1月 1 1970 boot
drwxr-xr-x 17 root root 3980 11月 21 20:55 dev
drwxr-xr-x 121 root root 12288 11月 21 20:42 etc
drwxr-xr-x 3 root root 4096 9月 26 2019 home
drwxr-xr-x 16 root root 4096 9月 26 2019 lib
drwx------ 2 root root 16384 9月 26 2019 lost+found
drwxr-xr-x 3 root root 4096 11月 8 2019 media
drwxr-xr-x 2 root root 4096 9月 26 2019 mnt
drwxr-xr-x 4 root root 4096 9月 26 2019 opt
dr-xr-xr-x 187 root root 0 1月 1 1970 proc
drwx------ 19 root root 4096 11月 16 15:19 root
drwxr-xr-x 30 root root 900 11月 22 12:30 run
drwxr-xr-x 2 root root 4096 8月 12 12:38 sbin
drwxr-xr-x 2 root root 4096 9月 26 2019 srv
dr-xr-xr-x 12 root root 0 1月 1 1970 sys
drwxrwxrwt 17 root root 4096 11月 22 12:09 tmp
drwxr-xr-x 11 root root 4096 10月 13 23:54 usr
drwxr-xr-x 12 root root 4096 12月 7 2019 var

上述命令llls -l别名,用来显示当前目录下有哪些文件、文件夹,我们通过在根目录下使用该命令获得根目录下的文件目录。树莓派中这个是默认添加了别名的,有的Linux系统默认没有这个命令别名,可以通过alias命令手动在/etc/bashrc中添加alias ll='ls -l'

乍一看,这么多目录还是有点眼晕啊,我们可以简单列一下,系统目录下的文件不要随便乱改哦(当然是你有管理员权限的时候)。

  • bin 存放二进制可执行文件(lscatmkdir等)
  • boot 存放用于系统引导时使用的各种文件
  • dev 用于存放设备文件
  • etc 存放系统配置文件
  • home 存放所有用户文件的根目录
  • lib 存放跟文件系统中的程序运行所需要的共享库及内核模块
  • mnt 系统管理员安装临时文件系统的安装点
  • opt 额外安装的可选应用程序包所放置的位置
  • proc 虚拟文件系统,存放当前内存的映射
  • root 超级用户目录
  • sbin 存放二进制可执行文件,只有root才能访问
  • tmp 用于存放各种临时文件
  • usr 用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录
  • var 用于存放运行时需要改变数据的文件

在知道了我们在哪里之后,我们如果想去哪里该如何操作呢?可以通过cd命令(Change Directory)来改变目录,到达我们想去的目录。

pi@raspberrypi4:~ $ cd /home/pi/Documents/
pi@raspberrypi4:~/Documents $

上述命令我们通过命令跳转到了~/Documents目录。

此外常用的目录地址简写:

./  代表当前目录
../ 代表当前目录的上一层目录
/ 代表根目录
~/ 代表用户目录

3 我要干什么?

这里我们介绍一些常用的操作文件操作命令,创建、剪切、复制、编辑、查找等操作。

pi@raspberrypi4:~ $ mkdir folder
pi@raspberrypi4:~ $ cd folder/
pi@raspberrypi4:~/folder $ touch file.txt
pi@raspberrypi4:~/folder $ nano file.txt

首先,我们通过mkdir命令在用户目录下创建了一个名为folder的文件夹,然后进入到该文件夹目录下,通过touch命令创建了一个名为file.txt的空文件。然后我们通过nano命令,一个类似于记事本的命令行文本编辑程序,打开该空文件,界面就是下方这样。

  GNU nano 3.2                              file.txt

test
this is a test file.
当然,也是可以输入中文的。 [ 已读取 3 行 ]
^G 求助 ^O 写入 ^W 搜索 ^K 剪切文字 ^J 对齐 ^C 游标位置
^X 离开 ^R 读档 ^\ 替换 ^U 还原剪切 ^T 拼写检查 ^_ 跳行

上述编辑器界面下方是功能键提示,表示Ctrl键,M表示Alt键。因此,G表示的就是同时按下Ctrl键和G键。通过组合键Ctrl+X关闭该文件,会提示是否保存修改,输入“y”,保存退出文件。

pi@raspberrypi4:~/folder $ cp file.txt file_cp.txt
pi@raspberrypi4:~/folder $ mv file.txt file_mv.txt
pi@raspberrypi4:~/folder $ mv file_mv.txt ../file.txt
pi@raspberrypi4:~/folder $ ll
总用量 4
-rw-r--r-- 1 pi pi 66 11月 22 20:22 file_cp.txt
pi@raspberrypi4:~/folder $ rm file_cp.txt
pi@raspberrypi4:~/folder $ ll
总用量 0

上述,cp将文件file.txt复制到了本目录下的file_cp.txtmv将文件file.txt移动到本目录下file_mv.txt(相当于重命名操作),mv将文件file_mv.txt移动到上一级目录下,并重命名为file.txt。通过ll命令查看本目录下只剩下file_cp.txt一个文件了,通过rm命令将file_cp.txt删除,然后查看本目录下已经没有文件了。

pi@raspberrypi4:~/folder $ mv ../file.txt ./
pi@raspberrypi4:~/folder $ ll
总用量 4
-rw-r--r-- 1 pi pi 66 11月 22 20:12 file.txt
pi@raspberrypi4:~/folder $ cat file.txt
test
this is a test file.
当然,也是可以输入中文的。
pi@raspberrypi4:~/folder $ find file.txt
file.txt
pi@raspberrypi4:~/folder $ find file*
file.txt

然后将移动到上一层目录的文件file.txt移动到本目录下,通过cat命令可以直接查看文件内容,并输出到命令行。此外,可以通过find命令查找目录下的相关文件,搭配通配符“*”使用效果更好(你可能不一定记得目录下的要查找的文件名称)。

此外,还有万能的帮助命令,如果你对某个命令的使用不是太清楚,可以直接使用man命令查找帮助,比如man nano来查看nano的帮助文件描述(不过都是英文的)。

NANO(1)                         General Commands Manual                         NANO(1)

NAME
nano - Nano's ANOther editor, an enhanced free Pico clone SYNOPSIS
nano [options] [[+line[,column]] file]... DESCRIPTION
nano is a small and friendly editor. It copies the look and feel of Pico, but
is free software, and implements several features that Pico lacks, such as:
opening multiple files, scrolling per line, undo/redo, syntax coloring, line
numbering, and soft-wrapping overlong lines. When giving a filename on the command line, the cursor can be put on a specific
line by adding the line number with a plus sign (+) before the filename, and
even in a specific column by adding it with a comma. As a special case: if instead of a filename a dash (-) is given, nano will read
data from standard input. EDITING
Entering text and moving around in a file is straightforward: typing the letters
and using the normal cursor movement keys. Commands are entered by using the
Control (^) and the Alt or Meta (M-) keys. Typing ^K deletes the current line
and puts it in the cutbuffer. Consecutive ^Ks will put all deleted lines to‐
gether in the cutbuffer. Any cursor movement or executing any other command
will cause the next ^K to overwrite the cutbuffer. A ^U will paste the current
contents of the cutbuffer at the current cursor position.
Manual page nano(1) line 1 (press h for help or q to quit)

4 小 结

  • whoami 查看当前用户
  • pwd命令查看用户的当前目录
  • 可用 cd 命令来切换目录
  • .表示当前目录
  • .. 表示当前目录的上一级目录(父目录)
  • ~ 表示用户主目录的绝对路径名
  • ls 显示文件或目录信息
  • mkdir 当前目录下创建一个空目录
  • rmdir 要求目录为空
  • touch 生成一个空文件或更改文件的时间
  • cp 复制文件或目录
  • mv 移动文件或目录、文件或目录改名
  • rm 删除文件或目录
  • cat 查看文本文件内容
  • man 查看帮助命令

本小节主要了解Linux系统下的基本文件操作命令,当你在面对这个黑黑的框框的时候,是不是有点跃跃欲试呢。下一节,我们将通过虚拟机搭建一个Linux环境,以便趁热试试手(而不用先急着入手树莓派)。

欢迎关注我的公众号,持续更新中~~~

树莓派了解Linux基本命令的更多相关文章

  1. Linux基本命令(一)

    Linux基本命令 编辑器 vim编译器 Gnu工具链-gcc调试器 GDB操作系统是用C来写的 系统编程 (核心骨架 80%) 文件I/O 文件系统 进程{ 进程控制原语.进程间通信.进程间关系 信 ...

  2. 2 、Linux基本命令-ls-pwd-cd-date-hwclock

    Linux基本命令: 1.ls-查看目录下的文档 语法: ls 目录 注: .当前目录  ..上级目录 如:ls /etc/ 相关参数: -l  显示详细信息 ls /etc/ -l -a 显示隐藏的 ...

  3. Linux基本命令 目录

    Linux基本命令 目录 Linux基本命令(1)管理文件和目录的命令 Linux基本命令(2)有关磁盘控件的命令 Linux基本命令(3)文件备份和压缩的命令 Linux基本命令(4)有关关机和查看 ...

  4. linux 基本命令 [转]

    linux 基本命令 1.ls  (list 显示当前目录下文件和目录 ls -l 详细显示 =ll ) [root@linux ~]# ls [-aAdfFhilRS] 目录名称 [root@lin ...

  5. 转:Linux基本命令大全

    Linux基本命令大全   新手刚刚接触Linux的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过Linux一段时间后,你就会逐渐了解Linux其实和Windows一样容 ...

  6. 剑指Offer——知识点储备--Linux基本命令+Makefile

    剑指Offer--知识点储备–Linux基本命令 1.linux下查看进程占用cpu的情况(top): 格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 主要参 ...

  7. Linux(1)- 服务器核心知识、Linux入门、VMware与centeos安装、远程连接linux、linux基本命令使用

    一.服务器核心知识 1.电脑和电脑的硬件组成 现在的人们几乎无时无刻不在使用着电脑!不管是桌上型电脑(桌机).笔记型电脑(笔电).平板电脑,还是智慧型手机等等,这些东西都算是电脑.虽然接触这么多,但是 ...

  8. Linux学习总结(9)——Linux 新手必知必会的 10 条 Linux 基本命令

    Linux 对我们的生活产生了巨大的冲击.至少你的安卓手机使用的就是 Linux 核心.尽管如此,在第一次开始使用 Linux 时你还是会感到难以下手.因为在 Linux 中,通常需要使用终端命令来取 ...

  9. 第三章 Linux基本命令操作

    第三章  Linux基本命令操作 ¨  本节所讲内容: ¨  3.1  Linux终端介绍 Shell提示符 Bash Shell基本语法 ¨  3.2  基本命令的使用:ls.pwd.cd.hist ...

随机推荐

  1. Word 2013中如何直接调用MathType

    相信有很多用户已经发现在使用Word 2013编辑文档时MathType无法直接调用,但是点击文档中的公式时能够跳出MathType公式编辑窗口,那么这是怎么回事呢?其实,这一问题也不是没有办法解决的 ...

  2. 如何使用MindManager更改思维导图布局

    思维导图可以帮您直观地捕捉想法和信息,并将其组织起来,进一步创建行动计划,思维导图软件MindManager不仅可以帮您分析问题.使用头脑风暴得出解决方案,还可以规划复杂的项目.下面是MindMana ...

  3. Java基础知识面试题(最详细版)

    刚刚经历过秋招,看了大量的面经,顺便将常见的Java常考知识点总结了一下,并根据被问到的频率大致做了一个标注.一颗星表示知识点需要了解,被问到的频率不高,面试时起码能说个差不多.两颗星表示被问到的频率 ...

  4. 【电子取证:抓包篇】Fiddler 抓包配置与数据分析(简)

    Fiddler 抓包配置与分析(简) 简单介绍了Fiddler抓包常用到的基础知识,看完可以大概明白怎么分析抓包数据 ---[suy999]   Fiddler 抓包工具,可以将网络传输发送与接受的数 ...

  5. Java基础教程——安装JDK

    视频讲解:https://www.bilibili.com/video/av48196406/?p=3 使用[jdk-8u144-windows-x64.exe] 下载地址: 链接:https://p ...

  6. 去除openwrite.cn博客验证码限制

    相信有的小伙伴肯定遇到过如下这种情况,但是作为老白嫖党肯定是 「下次一定」 了,所以今天我们来看看如何不关注公众号实现 「阅读原文」. 如何解决呢? 1.通过 F12 打开控制台,切换至 Elemen ...

  7. js创世纪--刨根问底原型和原型链

    原型和原型链 看图说话: 1.对象内部具有[[Prototype]]属性,该属性不可直接访问,浏览器通过__proto__(两条'_')可以让用户读写该内部属性,最重要的是,该属性指向创建本对象的原型 ...

  8. jupyter notebook 安装记录

    conda install jupyterconda install jupyter_nbextensions_configuratorconda install jupyter_contrib_nb ...

  9. Python音视频开发:消除抖音短视频Logo的图形化工具实现

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 在<Python音视频开发:消除抖音短视频Logo和去电视台标的实现详解>节介绍了怎么通过Python+Moviepy+OpenCV实现 ...

  10. 一个使用xlwings操作excel数据优化60倍处理效率的案例

    ☞ ░ 前往老猿Python博文目录 ░ 一.引言 老猿在将自己的博文数据(包括url地址.标题和阅读数量)从博客中获取后,使用xlwings保存到excel对象时发现,不同的处理方法性能相差非常大. ...