对于初学者来说,怎样选择Linux教程是挺困惑的事。视频教程大多只是讲片面的知识点,比较零散,大部头书籍很难啃,虽然书籍会将知识分类,可庞杂的知识体系往往令人望而生畏,遇到一个坎时很难跨过去。
尤为重要的是,初学者很难分辨哪些知识是常用的,哪些是只需要了解即可。而对于教程编写者来说,也很难做这样的区分,同样的知识点,对于不同应用人群,重要程度是不一样的。
我作为一个Linux新手,深知在学习过程中遇到的各种坑。新手总是希望能有一本大宝典,囊括了所有的技能,只需要跟着学,就能成为高手。
可,这种想法是不现实的。每一个高手的成长路径都不尽相同,高手并不是通过学习某些书籍而练成的,而是在不断解决问题中,累积经验,逐步构建了自己的知识体系。
因此,最好的教材,肯定是自己整理而成的。这也是我写《Linux笔记》系列的出发点。这个系列将持续更新,记录我在使用Linux过程中的各种问题。
单纯记录问题会显得很零散,故而借助《The Linux Command Line》作为知识主线,便于进行归档,所列举的知识点来源有多处,有些是自己实践过程中总结所得。
Linux
图形用户界面让简单的任务更容易完成, 而命令行界面使完成复杂的任务成为可能
一说到命令行,我们真正指的是 shell。shell 就是一个程序,它接受从键盘输入的命令, 然后把命令传递给操作系统去执行
快捷键 | 运行结果 |
---|---|
cd | 更改工作目录到你的家目录。 |
cd - | 更改工作目录到先前的工作目录。 |
cd ~user_name | 更改工作目录到用户家目录。例如, cd ~bob 会更改工作目录到用户“bob”的家目录。 |
ls — 列出目录内容 file — 确定文件类型 less — 浏览文件内容
选项 | 长选项 | 描述 |
---|---|---|
-a | --all | 列出所有文件,甚至包括文件名以圆点开头的默认会被隐藏的隐藏文件。 |
-d | --directory | 把这个选项与 -l 选项结合使用,可以看到所指定目录的详细信息,而不是目录中的内容。 |
-F | --classify | 这个选项会在每个所列出的名字后面加上一个指示符。例如,如果名字是 目录名,则会加上一个'/'字符。 |
-h | --human-readable | 当以长格式列出时,以人们可读的格式,而不是以字节数来显示文件的大小。 |
-l | 以长格式显示结果。 | |
-r | --reverse | 以相反的顺序来显示结果。通常,ls 命令的输出结果按照字母升序排列。 |
-S | 命令输出结果按照文件大小来排序。 | |
-t | 按照修改时间来排序。 |
分析长格式列表各字段含义
-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 filename
senlong@LAPTOP-JRJD2V5P:~$ file /etc/passwd
/etc/passwd: ASCII text
less filename
senlong@LAPTOP-JRJD2V5P:~$ less /etc/passwd
命令 | 行为 |
---|---|
Page UP or b | 向上翻滚一页 |
Page Down or space | 向下翻滚一页 |
UP Arrow | 向上翻滚一行 |
Down Arrow | 向下翻滚一行 |
G | 移动到最后一行 |
1G or g | 移动到开头一行 |
/charaters | 向前查找指定的字符串 |
n | 向前查找下一个出现的字符串,这个字符串是之前所指定查找的 |
h | 显示帮助屏幕 |
q | 退出 less 程序 |
命令行最为珍视的目标之一就是懒惰;用最少的击键次数 来完成最多的工作。另一个目标是你的手指永远不必离开键盘,永不触摸鼠标。 以下的bash 特性使键盘使用起来更加迅速,更加高效。
移动光标
按键 | 操作 |
---|---|
Ctrl-a | 移动光标到行首。 |
Ctrl-e | 移动光标到行尾。 |
Ctrl-f | 光标前移一个字符;和右箭头作用一样。 |
Ctrl-b | 光标后移一个字符;和左箭头作用一样。 |
Ctrl-l | 清空屏幕,相当于clear。 |
搜索历史命令
history
history
有相当多的快捷键操作,要记住并不容易。一般是查看历史命令内容,搜索相关命令,再通过命令id执行,简单明了
[root@senlong tmp]# history | less