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下进行练习。一方面其他目录下大量的文件看着麻烦,另外也可以避免误操作重要文件带来的系统问题。


posted @ 2017-01-16 00:13  贰拾肆樵  阅读(228)  评论(0编辑  收藏  举报