Linux基础命令

1、目录管理类命令

  • ls
  • cd
  • mkdir
  • rmdir
  1. mkdir:make directories 创建目录

    格式:# mkdir [OPTION] ..DIRECTORY 多个目录之间用空格隔开

      eg: # mkdir /tmp/test    在/tmp目录下建立子目录test

    -p:若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;

      -v :显示详细创建目录的过程

      -m:创建目录时同时设置目录的权限

    注意:路径基名:指路径中的最后一个路径位置

  2、rmdir:remove empty directories  用来删除空目录

    格式:rmdir [OPTION]... DIRECTORY...

    eg:cd /usr/meng/test     删除子目录os_1和其父目录bin

       rmdir -p bin/os_1

    -p或--parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;

     --ignore-fail-on-non-empty:此选项使rmdir命令忽略由于删除非空目录时导致的错误信息;

    -v或-verboes:显示命令的详细执行过程;

    --help:显示命令的帮助信息;

    --version:显示命令的版本信息。
3、cd:change directory 改变当前工作目录

  格式:cd 选项 参数

  eg:cd 进入用户主目录;

    cd ~ 进入用户主目录;

    cd - 返回进入此目录之前所在的目录;

    cd .. 返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思);

    cd ../.. 返回上两级目录;

    cd !$ 把上个命令的参数作为cd参数使用。

      -p 如果要切换到的目标目录是一个符号连接,直接切换到符号连接指向的目标目录

      -L 如果要切换的目标目录是一个符号的连接,直接切换到字符连接名代表的目录,而非符号连接所指向的目标目录。

       - 当仅实用"-"一个选项时,当前工作目录将被切换到环境变量"OLDPWD"所表示的目录。

4、ls:list 列出指定目录路径下的文件列表内容,并不能显示文件内容

    格式:ls [OPTION]... [FILE]...

    选项:

      -a ,--ALL: 显示所有文件,包括隐藏文件;

        -A:显示除.和..之外的所有文件;

        -h, --human-readable:对文件大小单位换算,用户较易读;换算后结果可能会非精确值;

        -d:查看目录自身而非其内部的文件列表,通常要与-l一起使用才有意义;

        -R: recursive,递归显示,子目录子目录的子目录等都会被显示;

        -r – reverse: 逆序显示

        --color[=WHEN]:使用不同的颜色高亮显示不同类型的。

        -l: --long, 长格式列表,即显示文件的详细属性信息;

          -rw-r--r--. 1 root   root     8957 10月 14 19:34 boot.log

                                          第一个-:文件类型,-, d, b, c, l, s, p

                                                        -:普通文件

                                                        d:目录文件

                                                        b:

                                                        l:链接文件

                                                        c:字符设备

                                                        p:管道

                                                        s:套接字

                                          rw-r--r--:文件的访问权限perm

                                                 rw-:文件属主的权限;

                                                 r--:文件属组的权限;

                                                 r--:其它用户(非属主、属组)的权限;

                                          1:数字表示文件被硬链接的次数;

                                          左root:文件的属主,文件的所有者;

                                          右root:文件的属组;

                                          8957:数字表示文件的大小size,单位是字节;

                                          10月 14 19:34 :文件最近一次被修改的时间;

                                                 stat :表示文件的状态  # stat /PATH/TO/SOMEFILE 获取指定文件的元数据        

                                          boot.log:文件名

2、文件文本查看类命令

  • cat
  • tac

    1、cat :显示文件文本内容

      格式:cat [OPTION]... [FILE]...

      选项:

        -n:给显示的文本行编号;

                        -E: 显示行结束符$;

    2、tac:和cat差不多

3、文件内容查看命令

  • file
  • echo
  • which
  • whatis

  1、file:探测给定文件的类型

     格式:file [FILE]..

  2、echo:回显命令,功能是在显示器上显示一段文字,一般起到一个提示的作用。shell中打印shell变量的值,或者直接输出指定的字符串。
    格式:echo [SHORT-OPTION]... [STRING]...

    选项:    

      -n: 不进行换行;

                 -e:让转义符生效;

                       \n:换行

                       \t:制表符

     STRING可以使用引号,单引号和双引号均可用;

                      单引号:强引用,变量引用不执行替换;

                                   ~]# echo '$SHELL'

                      双引号:弱引用,变量引用会被替换;

                                   ~]# echo "$SHELL"

                           注意:变量引用的正规符号

                                   ${name}

  3、which:用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

    格式:which(选项)(参数)

    选项:

      --skip—alias:禁止显示别名

  4、whatis:使用whatis命令可将当前系统上所有的帮助手册以及对应的关键字创建为一个数据库

4、系统管理类命令

  • 关机:halt,poweroff,shutdown,init0
  • 重启:reboot,shutdown,init6
  • 跟用户登录相关:who,whoami,w

 

5、pwd

  将当前目录的全路径名称(从根目录)写入标准输出。全部目录使用/分隔。第一个/表示根目录,最后一个目录是当前目录。执行pwd命令可立刻得知您目前所在的工作目录的绝对路径名称。

6、type:用来显示指定命令的类型,判断给出的指令是内部指令还是外部指令。
  命令类型:

alias:别名。

keyword:关键字,Shell保留字。

function:函数,Shell函数。

builtin:内建命令,Shell内建命令。

file:文件,磁盘文件,外部命令。

unfound:没有找到。

7、alias

  用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。使用alias时,用户必须使用单引号''将原来的命令引起来,防止特殊字符导致错误。

  注意:

    alias命令的作用只局限于该次登入的操作。若要每次登入都能够使用这些命令别名,则可将相应的alias命令存放到bash的初始化文件/etc/bashrc中。
  格式:alias 新的命令='原命令 -选项/参数'

  删除:要删除一个命令,可以使用unalias,如unalias l

8、Linux的标准文件结构

➜  /  ll
总用量 104K
drwxr-xr-x   2 root root 4.0K  9月 18 10:33 bin
drwxr-xr-x   3 root root 4.0K  9月  7 15:31 boot
drwxr-xr-x  17 root root 4.3K  9月 18 21:18 dev
drwxr-xr-x   3 root root 4.0K  9月  7 16:02 disk
drwxr-xr-x 141 root root  12K  9月 18 21:18 etc
drwxr-xr-x   4 root root 4.0K  8月 31 12:01 home
drwxr-xr-x  22 root root 4.0K  9月  7 18:01 lib    
drwxr-xr-x   4 root root 4.0K  9月 11 21:01 media
drwxr-xr-x   5 root root 4.0K  8月 31 17:59 mnt
drwxr-xr-x   8 root root 4.0K  8月 31 09:35 opt
dr-xr-xr-x 211 root root    0  9月 19  2015 proc
drwx------  16 root root 4.0K  9月 18 17:30 root
drwxr-xr-x  22 root root  720  9月 18 21:18 run
drwxr-xr-x   2 root root  12K  9月  7 18:01 sbin
drwxr-xr-x   2 root root 4.0K  4月 28 00:05 srv
dr-xr-xr-x  13 root root    0  9月 19  2015 sys
drwxrwxrwt   8 root root 4.0K  9月 18 22:05 tmp
drwxr-xr-x  10 root root 4.0K  4月 28 00:19 usr
drwxr-xr-x  13 root root 4.0K  8月 31 17:15 var
……

  

关于根目录下的文件描述,Linux是有一套标准可以进行参考:FHS(Filesystem Hierarchy Standard)。

要的目录的功能介绍。

boot目录
包含系统引导程序,Linux内核程序文件vmlinuz,磁盘内存映像文件initrd以及GRUB初始化引导程序和配置文件

除了boot目录,系统启动必须的5个目录:

  • dev

    系统设备目录。在Linux系统下,任何设备都对应着一个或多个设备文件,例如磁盘对应着 /dev/sd*文件

  • etc

    Linux系统运行的配置文本文件

  • lib

    该目录含有系统引导过程,及运行系统命令所需要挟内核模块和各种动态链接共享库文件

  • sbin

    超级用户组使用的系统命令

  • bin

    系统管理员和普通用户共享的各种通用命令程序

记忆方法

目录简称拼接:delsb,删除SB,谁删除这其中的目录了,谁就是那啥啥了 ^_^

其它主要会经常碰到的目录:

  • home

    用户主目录的根目录,每增加一个新用户,系统都会在此目录下面增加一个和用户名相同的目录,存储用户相关的配置及数据

  • media

    移动存储介质的安装点

  • mnt

    文件系统的临时挂载点

  • opt

    应用程序等附加软件的安装目录

  • var

    存储各种可变长的数据文件,如日志文件等等

  • usr

    Unix Soft Resource 存储系统提供的各种共享数据(用户命令、库函数、头文件和文档等)

  • root

    超级管理员的主目录

  • tmp

    临时文件目录,系统重启后会自动清空

  • proc

    进程文件系统的根目录,是一个虚拟文件系统,通过对此目录的文件读取可以获取系统运行态的很多信息:如CPU、内存、运行时间等等

关于根目录下的其它目录及其子目录的详细介绍及目录之间的区别,请参考linux官网关于 FHS 的最新更新(基本上每年都会有更新)。

9、文件描述及权限

在Linux下面对文件的操作有个很重要的概念,就是:文件权限。对于任何一个系统来讲,文件数据的各种操作肯定是很高频的交互,在Linux系统下,如果不了解文件系统的权限概念,那么在对文件数据进行操作的时候,必然会遇到各种阻碍,然后不得已而放弃了Linux的继续研究。

 

在图形界面下,文件的权限是通过在文件图标是否上锁(或者X号等)来进行形象可视化,在CLI界面,则是通过特殊的文本标记来显示:

 

➜  /  ll |grep bin
drwxr-xr-x   2 root root 4.0K  9月 25 14:56 bin
drwxr-xr-x   2 root root  12K  9月 25 14:55 sbin

 

如上对目录及文件的描述一共7段:

 

  1. permissions:文件的详细信息,主要是权限信息/类型信息
  2. link:文件硬链接数或目录子目录数
  3. user:文件所属用户
  4. group:文件所属组
  5. size:文件大小
  6. time:文件创建时间
  7. file:文件名称

 

记忆方法

七段的英文简称连写为:

PLUGSTF

参考记忆:插入TF卡

  • PLUGS:插头
  • TF:目前手机上使用的小型SD扩展卡

PLUG 部分是重要的权限组成部分,在Linux下进行操作,最最重要的基础概念就是文件的权限概念,如果这个没弄清楚,则会经常遇到各种阻碍。

 

7.1   文件类型及权限

典型的文字文件权限描述字符如下所示:

drwxr-xr-x

一共10位,按照功能对位进行划分,总共可以分为4个功能段,如下表所示:

文件权限及类型信息
类型用户权限组权限其它权限
1 3 3 3
d rwx r-x r-x

第一段表示文件的类型:

  • d: directory,表示目录

  • -: 短横线“空”表示普通文件,例如:文本文件,二进制文件

  • l: link,表示链接文件,例如:快捷方式

  • b: block,表示块状设备,例如:磁盘

  • c: character,表示字符特殊文件,例如:控制台终端/打印机等等

  • p: pipe,管理文件

  • 其它类型

    一般对于应用层开发人员,最多接触的就是目录和普通文件两种,其它有兴趣的可以去具体的查阅相应的资料。

纯粹的文件操作权限的描述有三类:

  • r 可读
  • w 可写
  • x 可执行

对文件操作的使用者身份划分成三类:

  • U User 直接从属用户
  • G Group 文件所属组
  • O Other 不属于上面两样的其它用户

文件权限的三段,对应着不同的使用者身份对此文件的不同权限,任何身份的用户不能够对文件做超过其权限的事情。

特别注意,在Linux系统下:

  • 不是通过扩展名来判定程序的类型的
  • 不是通过 .exe 来判定程序是否可执行,而是通过 x 属性表明此文件可以被执行
  • 和文件不同,目录的 x 属性表示可以将工作路径切换到目录里面

权限相关的9位,分别通过是1或者0来表示是不具有相应的权限,所以会产生如下的一些常见的数字值来表示文件的权限(使用一个小于8的整数来表示3个bit位的状态值):

  • 777

    111 111 111 表示对于U,G,O都是读/写/可执行全开发权限

  • 666

    110 110 110 表示对于U,G,O都是可读写但是不可执行

  • 644

    110 100 100 表示对于U是可读写,对于U和O则是只读的

所以如果要将某个文件修改为对所有的用户/组/其它都是可读写及执行的权限,可以执行如下命令:

chmod 777 xxx_file

或者使用一种主义化的方式来添加权限:

chmod a+rwx xxx_file

关于文件的权限及操作者身份限定,CLI里面提供了丰富的命令行工具,基本上用户可以通过这些命令完成所有对文件系统所需要的操作。具体的命令及操作,可以查阅相应的书藉和文档,多加练习,熟练操作即可。

 

7.2   其它描述信息

  • 文件大小
  • 创建时间
  • 文件名称

(来源:posted @ 2015-09-27 22:02 一点一滴的Beer

 

 

posted @ 2017-05-16 14:19  FernLi  阅读(145)  评论(0)    收藏  举报