【Linux】Linux命令行大全——读书笔记1

《Linux命令行大全》

在线文档地址:The Linux Command Line

阅读笔记之第1~4章:引言;什么是shell;文件系统中跳转;研究操作系统

一、概念

GUI: 图形用户界面
GNU: GNU’s Not Unix! 的递归缩写

shell 提示符$ —— 普通用户权限

[me@linuxbox ~]$
即, 用户名@主机名,紧接着当前工作目录和一个美元符号。

shell 提示符# —— 超级用户权限

[me@linuxbox ~]#
提示符的最后一个字符是“#”, (而不是“$”,) 那么这个终端会话就有超级用户权限。 即,我们或者是以 root 用户的身份登录,或者是我们选择的终端仿真器提供超级用户(管理员)权限。

二、常用命令

例如,查看less命令使用方法:在终端中输入:less --help

常用命令简记:

date # 显示系统当前时间和日期
cal # 显示当前月份的日历
df # 查看磁盘剩余空间的数量
free # 显示空闲内存的数量
exit # 终止当前终端会话
pwd # 打印当前工作目录名
cd # 更改目录
ls # 列出目录内容

2.1 列出目录内容:ls 命令

ls -a # 列出所有文件,包含隐藏文件
ls -l # 以长格式显示结果,或者缩写为 ll , 但mac不支持
ls -t # 按照修改时间来排序

ls -l 输出:

-rw-r--r-- 1 root root  358374 2007-04-03 11:05 ubuntu Sax.ogg

表 4-2: ls 长格式列表的字段

字段含义
-rw-r–r–对于文件的访问权限。第一个字符指明文件类型。在不同类型之间, 开头的“-”说明是一个普通文件,“d”表明是一个目录。其后三个字符是文件所有者的 访问权限,再其后的三个字符是文件所属组中成员的访问权限,最后三个字符是其他所 有人的访问权限。这个字段的完整含义将在第十章讨论。
1文件的硬链接数目。参考随后讨论的关于链接的内容。
root文件属主的用户名。
root文件所属用户组的名字。
32059以字节数表示的文件大小。
2007-04-03 11:05上次修改文件的时间和日期。
oo-cd-cover.odf文件名。

符号 “.” 指的是工作目录,”…” 指的是工作目录的父目录。

cd . # 切换到当前目录
cd .. # 切换到上一级目录,即,当前目录的父目录

2.2 更改目录:cd 命令

cd	# 更改工作目录到你的家目录。
cd -	# 更改工作目录到先前的工作目录。
cd ~user_name	# 更改工作目录到用户家目录。例如, cd ~bob 会更改工作目录到用户“bob”的家目录。

2.3 确定文件类型 :file命令

[me@linuxbox ~]$ file picture.jpg
picture.jpg: JPEG image data, JFIF standard 1.01

2.4 浏览文件内容:less命令(less 就是 more(禅语:色即是空))

less 命令是一个用来浏览文本文件的程序。

什么是“文本”
在计算机中,有许多方法可以表达信息。所有的方法都涉及到,在信息与一些数字之间确立一种关系,而这些数字可以 用来代表信息。毕竟,计算机只能理解数字,这样所有的数据都被转换成数值来表示。
文本是简单的字符与数字之间的一对一映射。它非常紧凑。五十个字符的文本翻译成五十个字节的数据。文本只是包含 简单的字符到数字的映射。
ASCII 是一个简单的编码方法,它首先被用在电传打字机上,用来实现键盘字符到数字的映射。

less 程序允许你前后滚动文件。例如,要查看一个定义了系统中全部用户身份的文件,输入以下命令:

[me@linuxbox ~]$ less /etc/passwd

如果文件内容多于一页,那么我们可以上下滚动文件。按下“q”键, 退出 less 程序。

表 4-3: less 命令

命令行为
Page UP or b向上翻滚一页
Page Down or space向下翻滚一页
UP Arrow向上翻滚一行
Down Arrow向下翻滚一行
G移动到最后一行
1G or g移动到开头一行
/charaters向前查找指定的字符串
n向前查找下一个出现的字符串,这个字符串是之前所指定查找的
h显示帮助屏幕
q退出 less 程序

三、杂记

3.1 文件名规则

  1. 以 “.” 字符开头的文件名是隐藏文件。ls 命令不能列出它们, 用 ls -a 命令就可以了。
  2. 文件名和命令名是大小写敏感的。
  3. Linux 没有“文件扩展名”的概念。
  4. 虽然 Linux 支持长文件名,文件名可能包含空格,标点符号,但标点符号仅限使用 “.”,“-”,下划线。最重要的是,不要在文件名中使用空格。

3.2 幕后控制台

即使终端仿真器没有运行,在后台仍然有几个终端会话运行着。它们叫做虚拟终端 或者是虚拟控制台。在大多数 Linux 发行版中,这些终端会话都可以通过按下 Ctrl-Alt-F1 到 Ctrl-Alt-F6 访问。当一个会话被访问的时候, 它会显示登录提示框,我们需要输入用户名和密码。要从一个虚拟控制台转换到另一个, 按下 Alt 和 F1-F6(中的一个)。返回图形桌面,按下 Alt-F7。

3.3 Linux 系统中的目录

表 4-4: 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 内核维护的虚拟文件系统。它所包含的文件是内核的窥视孔。这些文件是可读的, 它们会告诉你内核是怎样监管计算机的。
/rootroot 帐户的家目录。
/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。注意,为了系统安全,在一些系统中, 你必须是超级用户才能查看这些日志文件。

3.4 符号连接

lrwxrwxrwx 1 root root 11 2007-08-11 07:34 libc.so.6 -> libc-2.6.so
  • 在上面列出的目录(来自于 Fedora 的 /lib 目录)展示了一个叫做 “libc.so.6” 的符号链接,这个符号链接指向一个 叫做 “libc-2.6.so” 的共享库文件。这意味着,寻找文件 “libc.so.6” 的程序,实际上得到是文件 “libc-2.6.so”。
  • 为何这条信息第一个字符是“l”,并且有两个文件名呢? 这是一个特殊文件,叫做符号链接(也称为软链接或者 symlink )。 在大多数“类 Unix” 系统中, 有可能一个文件被多个文件名所指向。
  • 总结:”很多程序“使用了一个共享资源(此共享资源用版本号命名的,如 “libc-2.6”),如果此共享资源的版本更新了,那么,“很多程序”都要去寻找新的共享资源名,很费力。所以设置符号连接,只需要让符号链接“libc.so.6”指向真正的共享资源“libc-2.6.so”即可。

3.5 硬链接

硬链接同样允许文件有多个名字, 但是硬链接以不同的方法来创建多个文件名。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值