zoukankan      html  css  js  c++  java
  • linux学习笔记1——指令的基本格式及基本文件操作

    从今天开始就正式踏上了linux的学习历程。linux作为绝大多数服务器采用的操作系统,是每个开发人员都非常有必要掌握的操作系统。初学时,我没有直接在电脑上安装linux操作系统,而是采用了虚拟机的方式,可以省去很多麻烦。 我用了VMware虚拟机+CentOS7的组合,具体的安装过程就不放在这里了,网上有很多详细的帖子,也没什么难度。


    一、linux命令的基本格式:[root@localhost ~]# ls -a    其中[root@localhost ~]#是命令起始符 ls -a是命令

    命令起始符:
    [root@localhost ~]# 
        root:表示当前登陆用户(linux中管理员账户名为root)
        localhost:主机名
        ~:表示当前所在目录 (若为’~‘,表示当前目录为当前用户的家目录)
        #:标识当前用户的权限: 超级用户为# 普通用户为$

    命令格式:
            命令  [选项] [参数]

    二、linux文件类型:
          和windows不同,linux文件不具有扩展名,平时在linux文件名中见到的“.xxx”只是便于使用者分辨文件类型的约定用法,对于系统来说只是文件名串的一部分而已。而linux是靠权限区分文件类型的:
              
        这里我们使用ls -la命令,查询当前目录下所有文件的详细信息,其中每一行的第一项就是该文件的权限了。
        权限默认为十位。第一位为文件类型: - 文件  d 目录 l 软连接文件   其中目录相当于“文件夹”的概念,而软连接文件相当于“快捷方式”的概念。
                                      后九位每三位为一组,分别代表文件所有者、所属组、其他组的权限,r 读 w 写 x 执行。

                                      比如这一项,根据其权限串drwxr-xr-x可以得到: 文件类型:目录;所有者权限:读、写、执行;所属组及其他组权限:读、执行

     三、相对路径与绝对路径:
          这个和之前在web项目构造中用到的路径概念是一样的。相对路径是根据当前所在目录进行查找: [root@localhost ~]# cd ../folder/src
                                                                                                    绝对路径是从根目录开始查找: [root@localhost ~]# cd /usr/folder/src
     
    四、软连接与硬链接:
                  硬链接:与原文件拥有相同的i结点和存储block块,可以看作是同一个文件的另一个入口;可以通过i节点识别;不能跨分区;不能针对目录使用
                  软连接:类似于Windows中的快捷方式;软连接拥有自己的i节点和Block块,但是数据块中只保存原文件的文件名和i节点号,没有实际的文件数据;软连接的文件权限都为lrwxrwxrwx;删除原文件后,软连接也自然不能使用。

    五、基本文件操作命令:

    1、查询目录中的内容
          ls [选项] [文件或目录]
    -a:显示所有文件 (文件名以.开头的是隐藏文件)
    -l:显示详细信息 
    -d:查看目录属性 
    -h:人性化显示文件大小(单位)
    -i:显示inode(文件id号)
          ls -l命令也可直接用 ll 命令代替

    2、建立目录 make directories
          mkdir -p [目录名]
                -p : 递归创建(先创建上一级目录,再创建下级目录)  如: mkidr -p folder1/folder2    这个命令会先创建folder1目录,再在folder1下创建folder2目录。

    3、切换目录 change directory
          cd [目录]
          可以进行简化:   cd ~ 直接回到家目录 cd 直接回到家目录 cd -进入上一次访问的目录 cd ..进入上一级目录cd .进入当前目录   

    4、查询所在目录位置 print working directory
          pwd

    例如:

    5、删除空目录 remove empty directory
          rmdir [目录名]


    6、删除文件或目录 remove
          rm -rf [文件或目录]
                -r 删除目录
                -f 强制删除
          警惕:对待linux命令一定要严谨,有些我们可能认为不会执行的命令、或者手滑输入之类,系统都会忠实的执行。 比如这条: rm -rf /  ,这条命令会直接删除根目录下所有文件,系统直接自杀。。。。并不会像windows一样,有各种系统设定来避免你做出这样的操作(不信你在windows系统内格式化一下C盘试试。。)


    7、复制 copy
          cp [选项] [原文件或目录][目标目录]
            -r:复制目录
            -p:连带文件属性复制
            -d:若源文件是链接文件,则复制链接属性
            -a:相当于 -pdr  目标文件和源文件会完全一致,包括修改时间
            若[目标目录]中写了文件名,则为改名复制。


    8、剪切或改名 move
          mv [原文件或目录] [目标目录]
          与rm等命令不同,此命令在操作目录文件时也不需要加-r
          做改名操作时,只需让原文件和目标文件在同一目录下即可


    9、链接命令 link
          ln -s [原文件] [目标文件]
              -s:生成软链接
          原文件记得要写绝对路径。

    六、linux下常见目录      

    /bin               二进制可执行命令/dev 设备特殊文件
    /etc               系统管理和配置文件
    /etc/rc.d        启动的配置文件和脚本
    /home           用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
    /lib                标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件
    /sbin             超级管理命令,这里存放的是系统管理员使用的管理程序
    /tmp              公共的临时文件存储点
    /root             系统管理员的主目录
    /mnt              系统提供这个目录是让用户临时挂载其他的文件系统
    /lost+found  这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
    /proc             虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
    /var               某些大文件的溢出区,比方说各种服务的日志文件
    /usr               最庞大的目录,要用到的应用程序和文件几乎都在这个目录

    做练习的时候,最好在tmp下进行练习。一方面其他目录下大量的文件看着麻烦,另外也可以避免误操作重要文件带来的系统问题。


  • 相关阅读:
    20165334 实验一 Java开发环境的熟悉
    20165334 《java程序设计》第5周学习总结
    20165334《java程序设计》第4周学习总结
    20165334《java程序设计》第三周学习总结
    20165334 预备作业3 Linux及学习
    20165334 学习基础与c语言学习心得
    20165228 实验一 Java开发环境的熟悉
    20165228 2017-2018-2 《Java程序设计》第5周学习总结
    20165228 2017-2018-2 《Java程序设计》第4周学习总结
    20165228 2017-2018-2 《Java程序设计》第3周学习总结
  • 原文地址:https://www.cnblogs.com/zhuwq585/p/6390544.html
Copyright © 2011-2022 走看看