linux命令行入门(一) 《The Linux Command Line》

大学时光过得真快,在毕业来临前,打算认真过一遍linux知识点。

其实更重要的原因是,毕业设计需要使用到linux环境,学习linux这个大家伙的旅程就这样开始了。。。。

 

书本共有37章,每文概括5章内容,共8篇。

 

第一章1-引言

1.1 为什么使用命令行     命令行cli 可以做 比 gui 更复杂的任务 更高效

1.2 这本书讲什么
    如何使用命令行为我们工作
   
1.3 谁应该读这本书
    有windows经验 没有linux经验的用户
   
1.4 这本书的内容
    分5大部分-循序渐进

1.5 怎样阅读这本书
    从头到尾-上机体验

 

第二章2-shell

2.1 终端仿真器
        市面上的linux封装好的终端-附带些花桥功能

2.2 随意输入
        提示符显示,用户名@主机名+当前目录

        [seven@localhost 桌面]$ 555
        bash: 555: command not found

2.3 命令历史
        按上下箭头
        
2.4 移动光标编辑
        按左右箭头
        
2.5 关于鼠标和光标
        鼠标拖黑即刻复制,鼠标中键粘贴,ctrl+c\v 不可使用
        
2.6 简单命令
        [seven@localhost 桌面]$ data
        bash: data: command not found
        [seven@localhost 桌面]$ date
        2019年 03月 04日 星期一 19:09:08 PST
        [seven@localhost 桌面]$ cal
              三月 2019     
        日 一 二 三 四 五 六
                        1  2
         3  4  5  6  7  8  9
        10 11 12 13 14 15 16
        17 18 19 20 21 22 23
        24 25 26 27 28 29 30
        31
        [seven@localhost 桌面]$ 
        
        [seven@localhost 桌面]$ df
        Filesystem     1K-blocks    Used Available Use% Mounted on
        /dev/sda2       13498888 2780676  10025836  22% /
        tmpfs             501512     444    501068   1% /dev/shm
        /dev/sda1         289293   34892    239041  13% /boot

2.7 结束终端会话
        [seven@localhost 桌面]$ exit
        
2.8 幕后控制台
        cli有:alt+f1-f6,gui:alt+f7
 
第三章3-文件系统跳转

3.1 理解文件系统树
        一棵树型目录又叫文件夹,windows 每个存储设备都有独立的文件系统
        但是 linux 中 只有单一的文件系统树
    
3.2 当前工作目录
        文件系统是一棵倒立的树,我们处于其中一个目录里面。
        首次登陆系统后,当前工作目录是我的主目录。
        普通用户的写入权限,限制在他的主目录中。
        [root@localhost 桌面]# pwd
        /home/seven/桌面
        [root@localhost 桌面]# who am i
        seven    pts/0        2019-02-26 21:22 (:0.0)
        [root@localhost 桌面]# su root
        [root@localhost 桌面]# who am i
        seven    pts/0        2019-02-26 21:22 (:0.0)
        [root@localhost 桌面]# su seven
        [seven@localhost 桌面]$ who am i
        seven    pts/0        2019-02-26 21:22 (:0.0)
        [seven@localhost 桌面]$ pwd
        /home/seven/桌面

3.3 列出目录内容
        [seven@localhost 桌面]$ ls
        test.py

3.4 更改当前工作目录
        使用 cd 命令

3.5 绝对路径
        从根目录开始写,紧跟着分支。
        [seven@localhost bin]$ cd /usr/bin
        [seven@localhost bin]$ pwd
        /usr/bin
        [seven@localhost bin]$ ls

3.6 相对路径
         . 表示当前目录     ..表示父目录
        [seven@localhost bin]$ cd
        [seven@localhost ~]$ pwd
        /home/seven
        [seven@localhost ~]$ cd /usr/bin
        [seven@localhost bin]$ pwd
        /usr/bin
        [seven@localhost bin]$ cd /usr
        [seven@localhost usr]$ pwd
        /usr
        [seven@localhost usr]$ cd ./bin
        [seven@localhost bin]$ pwd
        /usr/bin
        [seven@localhost bin]$ cd bin
        bash: cd: bin: 没有那个文件或目录

3.7 有用的快捷键
        cd :更改工作目录到主目录
        cd - :退回到刚才的工作目录
        cd ~user_name :去那个用户的目录
        
第四章4-探究操作系统

4.1 命令行 ls
        [seven@localhost ~]$ ls
        公共的  模板  视频  图片  文档  下载  音乐  桌面
        [seven@localhost ~]$ ls /usr
        bin  games    lib    libexec  sam   share  tmp
        etc  include  lib64  local    sbin  src
        [seven@localhost ~]$ ls ~ /usr
        /home/seven:
        公共的  模板  视频  图片  文档  下载  音乐  桌面

        /usr:
        bin  games    lib    libexec  sam   share  tmp
        etc  include  lib64  local    sbin  src
        [seven@localhost ~]$ ls -l
        总用量 32
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 公共的
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 模板
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 视频

        
4.2 选项和参数
        模板  command -options arguments
        [seven@localhost ~]$ ls -lt
        总用量 32
        drwxr-xr-x. 2 seven seven 4096 3月   4 19:24 桌面
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 视频
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 图片

        [seven@localhost ~]$ ls -lt --reverse
        总用量 32
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 下载
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 模板
        drwxr-xr-x. 2 seven seven 4096 1月  18 22:15 公共的


4.3 深入研究长格式输出
        drwxr-xr-x. 2 seven seven 4096 3月   4 19:24 桌面
        第一个d 表示  这是一个 目录,如果 第一个字符是 -
        这便是一个文件
        数字 2 表示 文件的硬链接数目
        第一个seven表示文件的主人,第二个seven表示文件属组

4.4 确定文件类型
        [seven@localhost picturess]$ file Penguins.jpg
        Penguins.jpg: JPEG image data, JFIF standard 1.02
        
        [seven@localhost picturess]$ less 1_preface.txt
        [seven@localhost picturess]$ less /etc/passwd

4.5 用less浏览文件内容
        可浏览ascii文本,不可浏览中文

4.6 less is more
        less程序是从 unix中的 more 该进过来的
        
4.7 linux 各目录的职能
        /bin 包含系统启动和运行需要的二进制程序
        /boot  包含linux 内核,驱动程序
        /dev 包含设备节点的特殊目录
        ......
       
4.8 符号链接
        windows的快捷方式
        
4.9 硬链接
        这可不是简单的快捷方式
     
第五章5-操作文件和目录

5.1 通配符
        快速指定一组文件名
        具体规则见表格
        [seven@localhost picturess]$ mkdir dir1
        [seven@localhost picturess]$ mkdir dir2 dir3
        [seven@localhost picturess]$ ls
        1_preface.txt  1_preface.txt~  dir1  dir2  dir3  Penguins.jpg

5.2 cp 复制文件和目录命令
        [seven@localhost picturess]$ cp 1_preface.txt 123.txt
        [seven@localhost picturess]$ ls
        123.txt  1_preface.txt  1_preface.txt~  dir1  dir2  dir3  Penguins.jpg
        [seven@localhost pic\turess]$ cp 123.txt dir1

5.3 有用的选项和实例
        [seven@localhost picturess]$ ls
        123.txt  1_preface.txt  1_preface.txt~  dir1  dir2  dir3  Penguins.jpg
        [seven@localhost picturess]$ cp 123.txt dir1
        [seven@localhost picturess]$ cp -a dir1
        cp: 在"dir1" 后缺少了要操作的目标文件
        请尝试执行"cp --help"来获取更多信息。
        [seven@localhost picturess]$ cp dir1 dir2 -a
        [seven@localhost picturess]$ cp dir1 dir2 -i
        cp: 略过目录"dir1"
        [seven@localhost picturess]$ cp 123.txt 123.txt
        cp: "123.txt" 与"123.txt" 为同一文件
        [seven@localhost picturess]$ cp 123.txt 123.txt -i
        cp: "123.txt" 与"123.txt" 为同一文件
        [seven@localhost picturess]$ cp 1_preface.txt 123.txt -i
        cp:是否覆盖"123.txt"? y
        [seven@localhost picturess]$ cp 123.txt 1_preface.txt -u
        [seven@localhost picturess]$ cp 123.txt 1_preface.txt -u
        [seven@localhost picturess]$ cp -i 123.txt 1_preface.txt
        cp:是否覆盖"1_preface.txt"? y
        [seven@localhost picturess]$ cp 123.txt 1_preface.txt dir1

5.4 mv(移动和重命名文件)
        [seven@localhost picturess]$ mv 123.txt 234.txt

5.5 有用的选项和实例
        [seven@localhost picturess]$ rm 234.txt

5.6 有用的选项和实例
        [seven@localhost picturess]$ rm 234.txt
        [seven@localhost picturess]$ cp 1_preface.txt 123.txt
        [seven@localhost picturess]$ cp 1_preface.txt 234.txt
        [seven@localhost picturess]$ rm -i 123.txt
        rm:是否删除普通文件 "123.txt"?n
        [seven@localhost picturess]$ rm -f 123.txt
        [seven@localhost picturess]$ cp 1_preface.txt 123.txt
        [seven@localhost picturess]$ rm -v 123.txt
        已删除"123.txt"
       
5.7 ln(创建链接)
        硬:ln filename link
        软:ln -s   filename|dirctory  link
        
5.8 硬链接
        只能链接所在文件系统的文件

5.9 符号链接
        快捷方式,ls会显示坏链

5.10    创建游戏场(实战演习)
        mkdir playgroud
      
5.11    创建目录栏
        [seven@localhost picturess]$ cd
        [seven@localhost ~]$ mkdirplayground
        bash: mkdirplayground: command not found
        [seven@localhost ~]$ mkdir playground
        [seven@localhost ~]$ cd playground
        [seven@localhost playground]$ mkdir dir1 dir2
                
5.12    复制文件
        [seven@localhost ~]$ cp /etc/passwd .
        [seven@localhost ~]$ ls
        passwd     playground  模板  图片  下载  桌面
        picturess  公共的      视频  文档  音乐
        [seven@localhost ~]$ cd playground
        [seven@localhost playground]$ cp /etc/passwd .
        [seven@localhost playground]$ ls
        -  dir1  dir2  passwd
        [seven@localhost playground]$ ls -a
        -  .  ..  dir1  dir2  passwd
        [seven@localhost playground]$ ls -v
        dir1  dir2  passwd  -
        [seven@localhost playground]$ ls -l
        总用量 16
        -rw-r--r--. 1 seven seven 1493 3月   5 18:40 -
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:39 dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:39 dir2
        -rw-r--r--. 1 seven seven 1493 3月   5 18:42 passwd
        [seven@localhost playground]$ cp -v /etc/passwd .
        "/etc/passwd" -> "./passwd"
        [seven@localhost playground]$ cp -i /etc/passwd .
        cp:是否覆盖"./passwd"? y
       
5.13    移动和重命名文件
        [seven@localhost playground]$ mv passwd fun
        [seven@localhost playground]$ mv fun dir1
        [seven@localhost playground]$ mv dir1/fun dir2
        [seven@localhost playground]$ ls
        -  dir1  dir2
        [seven@localhost playground]$ cd dir2
        [seven@localhost dir2]$ ls
        fun
        [seven@localhost dir2]$ ..
        bash: ..: command not found
        [seven@localhost dir2]$ cd ..
        [seven@localhost playground]$ mv dir1/fun dir2 -v
        mv: 无法获取"dir1/fun" 的文件状态(stat): 没有那个文件或目录
        [seven@localhost playground]$ mv dir1/fun dir2 
        mv: 无法获取"dir1/fun" 的文件状态(stat): 没有那个文件或目录
        [seven@localhost playground]$ mv dir2/fun . -v
        "dir2/fun" -> "./fun"
        [seven@localhost playground]$ mv dir2/fun . -v
        mv: 无法获取"dir2/fun" 的文件状态(stat): 没有那个文件或目录
        [seven@localhost playground]$ mv fun dir1
        [seven@localhost playground]$ mv fun dir1 -v
        mv: 无法获取"fun" 的文件状态(stat): 没有那个文件或目录
        [seven@localhost playground]$ mv dir1 dir2
        [seven@localhost playground]$ mv dir1 dir2 -v
        mv: 无法获取"dir1" 的文件状态(stat): 没有那个文件或目录
        [seven@localhost playground]$ ls -l dir2
        总用量 4
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:50 dir1
        [seven@localhost playground]$ ls -l dir1
        ls: 无法访问dir1: 没有那个文件或目录
        [seven@localhost playground]$ ls -l dir2/dir1
        总用量 4
        -rw-r--r--. 1 seven seven 1493 3月   5 18:44 fun
        [seven@localhost playground]$ mv dir1 dir2
        mv: 无法获取"dir1" 的文件状态(stat): 没有那个文件或目录
        [seven@localhost playground]$ ls -l dir2
        总用量 4
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:50 dir1
        [seven@localhost playground]$ ls
        -  dir2
        [seven@localhost playground]$ ls dir2
        dir1
        [seven@localhost playground]$ mv dir2/dir1 dir1
        [seven@localhost playground]$ ls
        -  dir1  dir2
        [seven@localhost playground]$ ls
        -  dir1  dir2
        [seven@localhost playground]$ mv dir1 dir2/dir1
        [seven@localhost playground]$ ls
        -  dir2
        [seven@localhost playground]$ mv dir2/dir1 .
        [seven@localhost playground]$ ls
        -  dir1  dir2
        [seven@localhost playground]$ ls
        -  dir1  dir2
        [seven@localhost playground]$ ls dir1 dir2
        dir1:
        fun

        dir2:
        [seven@localhost playground]$ mv dir1/fun .
        [seven@localhost playground]$ ls
        -  dir1  dir2  fun
        [seven@localhost playground]$ ls dir1 dir2
        dir1:

        dir2:

5.14 创建硬链接
        [seven@localhost playground]$ clear screen

        [seven@localhost playground]$ ls
        -  dir1  dir2  fun
        [seven@localhost playground]$ ln fun fun-hard
        [seven@localhost playground]$ ls
        -  dir1  dir2  fun  fun-hard
        [seven@localhost playground]$ ln fun dir1/fun-hard
        [seven@localhost playground]$ ln fun dir2/fun-hard
        [seven@localhost playground]$ ls -l
        总用量 20
        -rw-r--r--. 1 seven seven 1493 3月   5 18:40 -
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:56 dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:56 dir2
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        [seven@localhost playground]$ rm -
        [seven@localhost playground]$ ls -l
        总用量 16
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:56 dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 18:56 dir2
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        [seven@localhost playground]$ ls -li
        总用量 16
        286860 drwxrwxr-x. 2 seven seven 4096 3月   5 18:56 dir1
        286861 drwxrwxr-x. 2 seven seven 4096 3月   5 18:56 dir2
        286876 -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun
        286876 -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard

5.15    创建符号链接
        [seven@localhost playground]$ ln -s fun fun-sym
        [seven@localhost playground]$ ln -s ../fun dir1/fun-sym -v
        "dir1/fun-sym" -> "../fun"
        [seven@localhost playground]$ ls ../fun
        ls: 无法访问../fun: 没有那个文件或目录
        [seven@localhost playground]$ ln -s ../fun dir2/fun-sym -v
        "dir2/fun-sym" -> "../fun"
        [seven@localhost playground]$ ls -l dir1
        总用量 4
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        lrwxrwxrwx. 1 seven seven    6 3月   5 18:59 fun-sym -> ../fun
        [seven@localhost playground]$ ls -l dir2
        总用量 4
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        lrwxrwxrwx. 1 seven seven    6 3月   5 19:00 fun-sym -> ../fun
        [seven@localhost playground]$ ln -s /home/seven/playground/fun dir1/fun-sym2
        [seven@localhost playground]$ ls -l dir2
        总用量 4
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        lrwxrwxrwx. 1 seven seven    6 3月   5 19:00 fun-sym -> ../fun
        [seven@localhost playground]$ ls -l dir1
        总用量 4
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        lrwxrwxrwx. 1 seven seven    6 3月   5 18:59 fun-sym -> ../fun
        lrwxrwxrwx. 1 seven seven   26 3月   5 19:02 fun-sym2 -> /home/seven/playground/fun
        [seven@localhost playground]$ ln -s /home/seven/playground/fn dir1/fun-sym2
        ln: 创建符号链接 "dir1/fun-sym2": 文件已存在
        [seven@localhost playground]$ ln -s /home/seven/playground/fn dir1/fun-sym3
        [seven@localhost playground]$ ls -l dir1
        总用量 4
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        lrwxrwxrwx. 1 seven seven    6 3月   5 18:59 fun-sym -> ../fun
        lrwxrwxrwx. 1 seven seven   26 3月   5 19:02 fun-sym2 -> /home/seven/playground/fun
        lrwxrwxrwx. 1 seven seven   25 3月   5 19:03 fun-sym3 -> /home/seven/playground/fn
        [seven@localhost playground]$ ln -s dir1 dir1-sym
        [seven@localhost playground]$ ls -l
        总用量 16
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:03 dir1
        lrwxrwxrwx. 1 seven seven    4 3月   5 19:03 dir1-sym -> dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:00 dir2
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun
        -rw-r--r--. 4 seven seven 1493 3月   5 18:44 fun-hard
        lrwxrwxrwx. 1 seven seven    3 3月   5 18:59 fun-sym -> fun

5.16    移动文件和目录
        [seven@localhost playground]$ rm fun-hard
        [seven@localhost playground]$ ls -l
        总用量 12
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:03 dir1
        lrwxrwxrwx. 1 seven seven    4 3月   5 19:03 dir1-sym -> dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:00 dir2
        -rw-r--r--. 3 seven seven 1493 3月   5 18:44 fun
        lrwxrwxrwx. 1 seven seven    3 3月   5 18:59 fun-sym -> fun
        [seven@localhost playground]$ rm -i fun
        rm:是否删除普通文件 "fun"?y
        [seven@localhost playground]$ ls -l
        总用量 8
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:03 dir1
        lrwxrwxrwx. 1 seven seven    4 3月   5 19:03 dir1-sym -> dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:00 dir2
        lrwxrwxrwx. 1 seven seven    3 3月   5 18:59 fun-sym -> fun
        [seven@localhost playground]$ less fun-sym
        fun-sym: 没有那个文件或目录
        [seven@localhost playground]$ rm fun-sym dir1-sym
        [seven@localhost playground]$ ls -l
        总用量 8
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:03 dir1
        drwxrwxr-x. 2 seven seven 4096 3月   5 19:00 dir2
        [seven@localhost playground]$ cd
        [seven@localhost ~]$ ls -r playground
        dir2  dir1
        [seven@localhost ~]$ rm -r playground

你可能感兴趣的:(Linux运维)