鱼C论坛

 找回密码
 立即注册
查看: 1397|回复: 0

[技术交流] 我的程序员之路(二)

[复制链接]
发表于 2018-5-11 17:00:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Linux基础(ubuntu)

一、Linux 的发展

    1. Linux 的发展史

         ① Unix --> minix --> linux

         ② Linux 源于 Unix(服务器操作系统),于 1991 年 Linus (林纳斯研发成功)

     2. Linux 分为内核版于发行版

         ① 内核(kernel)是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,主要做一些基本的,也是重要的操作。

                比如进程管理、内存管理、磁盘管理、电源管理、安全管理等



          发行版:

1. ubuntu(源于debian,界面友好,更新快,免费)

                           2. debian(商业版)

                           3. centos(源于 redhat ,无界面 ,免费 ,相较于 ubuntu 更稳当)

                           4. redhat (商业版)



二、文件和目录

    1. 单用户与多用户操作系统

指一台计算机在同一时间可以有多个用户使用 , 现在操作系统都是多用户的操作系统

          文件访问权限 : 不同的用户对同一文件访问是有差异的



     2. linux 文件系统

        ① 根目录“/”

              所有文件都是在“/”根目录下



          ② 用户家目录 、用户工作目录

               /home/user (“~”是家目录的简写)

               当前用户对用户家目录及其子目录有绝对的权限:

               创建 、删除文件 、文件夹



          ③ 根目录下面的一级子目录介绍

               1. / : 根目录

               2. /home/user : 用户家目录 , 用户工作目录

               3. /bin : 控制箱二进制文件目录

               4. /opt : 安装额外软件的目录(sudo apt-get install package 在线安装)

               5. /etc : 存放配置文件的目录



三、Linux 命令的基本使用

    1. 为什么使用Linux命令

① 命令方式比桌面方式要快 、更强大 、 更全面

           ② 在职场中 , 大量的服务器维护工作都是在远程通过 SSH 客户端来完成的 , 并没有图形界面 , 所有的维护工作都需要通过命令来完成



      2. Linux终端命令格式

① 终端命令格式 command [-options] [parameter]

                command : 命令

                -options :选项

                parameter :参数

                提示 :1. 选项是对命令的修饰 , 比如 ls -l :显示详细文件信息

                           2. 参数是对命令操作对象的描述 ls -l  /opt

                           3. 选项与参数没有顺序要求 , 一般按先选项 , 后参数 ls /opt -l

                问题 1:详细显示 /opt 目录下面的文件列表信息

                              ls -l /opt



           ② 查阅命令帮助信息

                1. command --help

                    ls --help

                2. man(manual:手册) command

                    man ls



           ③ 命令终端提示符

                 Linux :user@ubuntu:/home$

                          1. user : 用户名

                          2. ubuntu :主机名称

                          3. /home : 当前路径

                          4. $ : 用户类型($ : 普通用户 , # : 超级用户)

四、常用命令

    1.ls :list 列出文件列表信息

        格式:ls [-options] [parameter]

                  ls [选项] [文件]

        ① 常用选项

             -l :详细查看

                -a:查看所有文件

                -h:与 -l 结合 ,以更人性化显示文件大小 ,比如 1024  变为 1 K

                问题 1:查看家目录下的文件

                        ① ls -l(相对路径)

                        ② ls -l /home/user(绝对路径)

                问题 2:查看家目录下的所有文件

                         ① ls -a(相对路径)

                         ② ls -a /home/user(绝对路径)
                问题 3:详细查看家目录下的文件 , 并且以更友好的方式显示文件的大小
                         ① ls -lh(相对路径)
                         ② ls -lh /home/user(绝对路径)


          ② 文件列表详情 :
-rwxrw-rw- 1 python python  24442379 4月  21 17:59  html.zip
                 1. -rwxrw-rw-
                     ① 第一个字符 :文件的类型 (- :普通文件 , d :文件夹 ,l :链接文件)
                     ② 第二个字符到第 10 个字符 :用户对该文件的操作权限
                 2. python python :
                     ① 第一个 python :当前文件的属主用户 ,创建该文件的用户
                     ② 第二个 python :文件的属主用户的所属组


           ③ 通配符
1. * :代表 0 个或者多个任意字符
                     问题 1:查看 /bin 目录中以 r 开头的所有文件
                                  ls -a /bin/r*
                 2. ? : 代表一个任意字符
                     问题 2:查看 /bin 目录中以 r 开头的只有两个字符的文件
                                  ls -a /bin/r?


            ④ 补充
"." 代表当前目录,".." 代表上一级目录
                    以 "." 开头的文件为隐藏文件,需要用 -a 选项才能显示

    2. clear : 清除命令终端的屏幕
        快捷方式 :ctrl + L(注意,清屏只是将页面向下滚了一页,不相当于重新进入终端)
   
    3. pwd :显示当前目录的绝对路径

    4. cd :切换目录
                  1. 相对路径与绝对路径(当前目录是用户家目录)
                      相对路径 :相对于当前位置的路径
                                        cd Desktop/

                      绝对路径 :以根目录开始的路径
                                         cd /home/python/Desktop/
                      问题1:分别以相对路径和绝对路径进入到桌面目录中
                                   (当前目录是用户家目录)
                                   cd ./Desktop/
                                   cd /home/python/Desktop/


                       问题2:分别以相对路径和绝对路径进入/bin目录中
                                (当前目录是用户家目录)
                                相对路径:cd ../../bin
                                绝对路径: cd /bin
                   2. 常用的目录切换
                            cd .   : 进入当前目录
                            cd ..  : 进入上一级目录
                            cd ~   : 进入加目录
                            cd -   : 进入上一次的目录
                            cd /   : 进入根目录


    5. mkdir : 创建目录
格式 :mkdir [选项]…… 目录……


         问题 1 :在桌面创建 python2 目录
                    mkdir python2


         问题 2 :在 python2 目录中一次创建 a/b/c 级联目录
                      -p :一次创建级联目录
                      mkdir a/b/c -p


    6. touch : 创建文件
         格式 : touch [选项]…… 文件……


         问题1: 在桌面的python2目录中创建info.txt 文件
                           touch info.txt
                        touch /home/python/Desktop/python2/info.txt


         问题2: 在桌面的python2目录中一次创建 a.py ,b.py ,c.py 三个文件
                            touch a.py b.py c.py
    7. rm :删除文件或者文件夹
格式 :rm  [选项]…… [文件]
         
         选项:
              -i: 删除文件时给予提示
              -f: 强制删除,假如要删除的文件不存在,也不报错
              -r: 递归删除,假如要删除目录,则必须带该选项
                  
          问题1: 删除 python2 中的 a.py 文件
                        1. rm a.py


                        2. python@ubuntu:~/Desktop/python2$ rm -i a.py
                        rm:是否删除普通空文件 'a.py'? y


                        3. rm -f a.py
           
          问题2: 删除桌面 python2 目录中的a目录                
                       rm -r ./a  
                        删除目录是带 -r 选项
        
    8. cp :拷贝
格式  cp [选项] <源文件>  <目标文件>
             
          (当前的目录是Destop/python2)
          问题1: 拷贝桌面python2目录的info.txt 到 当前a目录下
                        cp info.txt  ./a


          问题2: 拷贝桌面python2目录的info.txt 到 当前a目录下,且改名order.txt
                        cp info.txt  ./a/order.txt
                       
          问题3: 拷贝当前a目录到桌面
                        cp -r  ./a  ../
                        拷贝目录需要-r选项
   
    9. mv :移动或者重命名文件
          格式 : mv <源文件>   <目标文件|或者文件夹>
           问题 1:把桌面python2目录的a.py 移到 当前a目录下
                            mv  a.py a/
                       
           问题2:把桌面python2目录的b.py 重命名为body.py
                        mv b.py body.py
                       
           问题3:把桌面python2目录移到家目录下
                        mv a ~  
                        移动目录时,不用带-r 选项


   10. tree :以树形方式显示文件列表
问题 :以树形方式显示加目录打的文件
                       tree ~
                       tree /
   
    11. history : 使用过的历史命令
         2097  ls
             2098  rm a.py
             2099  ls
             2100  history
             python@ubuntu:~/a$ !2082
             注意: !与2082之间没有空格


     12. 重定向命令 :>  >> 将命令执行结果重定向到一个文件 ,本应显示在终端上的内容保存到指定文件中
问题1: 把家目录的文件信息写到桌面的files.txt文件中
                        ls ~ > ~/Desktop/files.txt


              问题2: 把/opt的文件信息追加到桌面files.txt文件内容后面
                        ls /opt >> /home/python/Desktop/files.txt
                       
              注意: >输出重定向会覆盖原来的内容,>>输出重定向则会追加到文件的尾部。
   
      13. cat :查看文件内容
格式 :cat [选项]…… [文件]……
              问题1: 在桌面创建one.py,two.py文件,并且通过cat查看文件内容
                                 touch one.py two.py
                             edit one.py(gedit打开文件编写内容)
                             gedit two.py
                             cat one.py
                问题2: 把one.py  two.py 合并到 three.py 文件中,再通过cat查看
                              cat one.py two.py > three.py
                              cat three.py


                问题3: 使用cat查看/opt/sublime_text/sublime.py 文件内容
                             cat /opt/sublime_text/sublime.py


     14. more :分屏显示文件的内容
问题 : 使用more查看/opt/sublime_text/sublime.py 文件内容
                           more /opt/sublime_text/sublime.py
                           按空格切换到下一个屏


     15. 设置 root 账号密码(注意:一定要先修改密码才能登陆到 root)
             python@ubuntu:/home$ sudo passwd root
             [sudo] python 的密码:
             输入新的 UNIX 密码:
             重新输入新的 UNIX 密码:
             passwd:已成功更新密码
             python@ubuntu:/home$ su root
             密码:
             root@ubuntu:/home# cd python
             root@ubuntu:/home/python#


本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-24 00:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表