前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux笔记1

Linux笔记1

作者头像
章鱼喵
发布2018-06-27 15:11:28
1.3K0
发布2018-06-27 15:11:28
举报
文章被收录于专栏:codingcoding

对于初学者来说,怎样选择Linux教程是挺困惑的事。视频教程大多只是讲片面的知识点,比较零散,大部头书籍很难啃,虽然书籍会将知识分类,可庞杂的知识体系往往令人望而生畏,遇到一个坎时很难跨过去。

尤为重要的是,初学者很难分辨哪些知识是常用的,哪些是只需要了解即可。而对于教程编写者来说,也很难做这样的区分,同样的知识点,对于不同应用人群,重要程度是不一样的。

我作为一个Linux新手,深知在学习过程中遇到的各种坑。新手总是希望能有一本大宝典,囊括了所有的技能,只需要跟着学,就能成为高手。

可,这种想法是不现实的。每一个高手的成长路径都不尽相同,高手并不是通过学习某些书籍而练成的,而是在不断解决问题中,累积经验,逐步构建了自己的知识体系。

因此,最好的教材,肯定是自己整理而成的。这也是我写《Linux笔记》系列的出发点。这个系列将持续更新,记录我在使用Linux过程中的各种问题。

单纯记录问题会显得很零散,故而借助《The Linux Command Line》作为知识主线,便于进行归档,所列举的知识点来源有多处,有些是自己实践过程中总结所得。

Linux

命令行概念

图形用户界面让简单的任务更容易完成, 而命令行界面使完成复杂的任务成为可能

一说到命令行,我们真正指的是 shell。shell 就是一个程序,它接受从键盘输入的命令, 然后把命令传递给操作系统去执行

快速切换目录

快捷键

运行结果

cd

更改工作目录到你的家目录。

cd -

更改工作目录到先前的工作目录。

cd ~user_name

更改工作目录到用户家目录。例如, cd ~bob 会更改工作目录到用户“bob”的家目录。

文件命名规则
  • 以 “.” 字符开头的文件名是隐藏文件
  • 文件名和命令名是大小写敏感的。文件名 “File1” 和 “file1” 是指两个不同的文件名
  • Linux 没有“文件扩展名”的概念,不像其它一些系统。可以用你喜欢的任何名字来给文件起名
  • 虽然 Linux 支持长文件名,文件名可能包含空格,标点符号,但标点符号仅限使用 “.”,“-”,下划线。最重要的是,不要在文件名中使用空格。如果你想表示词与 词间的空格,用下划线代替

基础命令

ls — 列出目录内容 file — 确定文件类型 less — 浏览文件内容

ls 命令选项

选项

长选项

描述

-a

--all

列出所有文件,甚至包括文件名以圆点开头的默认会被隐藏的隐藏文件。

-d

--directory

把这个选项与 -l 选项结合使用,可以看到所指定目录的详细信息,而不是目录中的内容。

-F

--classify

这个选项会在每个所列出的名字后面加上一个指示符。例如,如果名字是 目录名,则会加上一个'/'字符。

-h

--human-readable

当以长格式列出时,以人们可读的格式,而不是以字节数来显示文件的大小。

-l

以长格式显示结果。

-r

--reverse

以相反的顺序来显示结果。通常,ls 命令的输出结果按照字母升序排列。

-S

命令输出结果按照文件大小来排序。

-t

按照修改时间来排序。

分析长格式列表各字段含义

代码语言:javascript
复制
-rw-r--r-- 1 root root  358374 2007-04-03 11:05 ubuntu Sax.ogg

字段

含义

-rw-r--r--

对于文件的访问权限。第一个字符指明文件类型。其后三个字符是文件所有者的 访问权限

1

文件的硬链接数目

root

文件属主的用户名

root

文件所属用户组的名字

32059

以字节数表示的文件大小

2007-04-03 11:05

上次修改文件的时间和日期

oo-cd-cover.odf

文件名

file 确定文件类型

file filename

代码语言:javascript
复制
senlong@LAPTOP-JRJD2V5P:~$ file /etc/passwd
/etc/passwd: ASCII text
less 浏览文件内容

less filename

代码语言:javascript
复制
senlong@LAPTOP-JRJD2V5P:~$ less /etc/passwd
less 选项

命令

行为

Page UP or b

向上翻滚一页

Page Down or space

向下翻滚一页

UP Arrow

向上翻滚一行

Down Arrow

向下翻滚一行

G

移动到最后一行

1G or g

移动到开头一行

/charaters

向前查找指定的字符串

n

向前查找下一个出现的字符串,这个字符串是之前所指定查找的

h

显示帮助屏幕

q

退出 less 程序

Linux目录规范

  • / 根目录,万物起源。
  • /bin 包含系统启动和运行所必须的二进制程序。
  • /boot 包含 Linux 内核,最初的 RMA 磁盘映像(系统启动时,由驱动程序所需),和 启动加载程序。有趣的文件: /boot/grub/grub.conf or menu.lst, 被用来配置启动加载程序。 /boot/vmlinuz,Linux 内核。
  • /dev 这是一个包含设备结点的特殊目录。“一切都是文件”,也使用于设备。 在这个目录里,内核维护着它支持的设备。
  • /etc 这个目录包含所有系统层面的配置文件。它也包含一系列的 shell 脚本, 在系统启动时,这些脚本会运行每个系统服务。这个目录中的任何文件应该是可读的文本文件。有意思的文件:虽然/etc 目录中的任何文件都有趣,但这里只列出了一些我一直喜欢的文件: /etc/crontab, 定义自动运行的任务。 /etc/fstab,包含存储设备的列表,以及与他们相关的挂载点。/etc/passwd,包含用户帐号列表。
  • /home 在通常的配置环境下,系统会在/home 下,给每个用户分配一个目录。普通只能 在他们自己的目录下创建文件。这个限制保护系统免受错误的用户活动破坏。
  • /lib 包含核心系统程序所需的库文件。这些文件与 Windows 中的动态链接库相似。
  • /lost+found 每个使用 Linux 文件系统的格式化分区或设备,例如 ext3文件系统, 都会有这个目录。当部分恢复一个损坏的文件系统时,会用到这个目录。除非文件系统 真正的损坏了,那么这个目录会是个空目录。
  • /media 在现在的 Linux 系统中,/media 目录会包含可移除媒体设备的挂载点, 例如 USB 驱动器,CD-ROMs 等等。这些设备连接到计算机之后,会自动地挂载到这个目录结点下。
  • /mnt 在早些的 Linux 系统中,/mnt 目录包含可移除设备的挂载点。
  • /opt 这个/opt 目录被用来安装“可选的”软件。这个主要用来存储可能 安装在系统中的商业软件产品。
  • /proc 这个/proc 目录很特殊。从存储在硬盘上的文件的意义上说,它不是真正的文件系统。 反而,它是一个由 Linux 内核维护的虚拟文件系统。它所包含的文件是内核的窥视孔。这些文件是可读的, 它们会告诉你内核是怎样监管计算机的。
  • /root root 帐户的家目录。
  • /sbin 这个目录包含“系统”二进制文件。它们是完成重大系统任务的程序,通常为超级用户保留。
  • /tmp 这个/tmp 目录,是用来存储由各种程序创建的临时文件的地方。一些配置,导致系统每次 重新启动时,都会清空这个目录。
  • /usr 在 Linux 系统中,/usr 目录可能是最大的一个。它包含普通用户所需要的所有程序和文件。
  • /usr/bin /usr/bin 目录包含系统安装的可执行程序。通常,这个目录会包含许多程序。
  • /usr/lib 包含由/usr/bin 目录中的程序所用的共享库。
  • /usr/local 这个/usr/local 目录,是非系统发行版自带,却打算让系统使用的程序的安装目录。 通常,由源码编译的程序会安装在/usr/local/bin 目录下。新安装的 Linux 系统中,会存在这个目录, 但却是空目录,直到系统管理员放些东西到它里面。
  • /usr/sbin 包含许多系统管理程序。
  • /usr/share /usr/share 目录包含许多由/usr/bin 目录中的程序使用的共享数据。 其中包括像默认的配置文件,图标,桌面背景,音频文件等等。
  • /usr/share/doc 大多数安装在系统中的软件包会包含一些文档。在/usr/share/doc 目录下, 我们可以找到按照软件包分类的文档。
  • /var 除了/tmp 和/home 目录之外,相对来说,目前我们看到的目录是静态的,这是说, 它们的内容不会改变。/var 目录是可能需要改动的文件存储的地方。各种数据库,假脱机文件, 用户邮件等等,都驻扎在这里。
  • /var/log 这个/var/log 目录包含日志文件,各种系统活动的记录。这些文件非常重要,并且 应该时时监测它们。其中最重要的一个文件是/var/log/messages。注意,为了系统安全,在一些系统中, 你必须是超级用户才能查看这些日志文件。

快捷操作

命令行最为珍视的目标之一就是懒惰;用最少的击键次数 来完成最多的工作。另一个目标是你的手指永远不必离开键盘,永不触摸鼠标。 以下的bash 特性使键盘使用起来更加迅速,更加高效。

移动光标

按键

操作

Ctrl-a

移动光标到行首。

Ctrl-e

移动光标到行尾。

Ctrl-f

光标前移一个字符;和右箭头作用一样。

Ctrl-b

光标后移一个字符;和左箭头作用一样。

Ctrl-l

清空屏幕,相当于clear。

搜索历史命令

history

history有相当多的快捷键操作,要记住并不容易。一般是查看历史命令内容,搜索相关命令,再通过命令id执行,简单明了

代码语言:javascript
复制
[root@senlong tmp]# history | less
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.04.23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 命令行概念
    • 快速切换目录
      • 文件命名规则
      • 基础命令
        • ls 命令选项
          • file 确定文件类型
            • less 浏览文件内容
              • less 选项
              • Linux目录规范
              • 快捷操作
              相关产品与服务
              文件存储
              文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档