您的位置:首页 > 运维架构 > Shell

linux文件管理类命令,类型,用户的权限管理及bash shell的特性:命令别名,文件名通配

2016-08-11 19:35 633 查看
文件管理类命令
ls

查看 :cat tac more less head tail
复制:cp

    -r:递归
    -i:提示,交互
    -f:强制覆盖
    -a :保留所有文件信息
    -d:当源为链接文件时,复制链接本身,而非源文件
    -p:保持原有属性

删除 : rm
     删除非空目录 rm -rf

移动 : mv

创建 : touch
     用来修改时间戳,创建空文件
     -c:不创建新文件,只修改时间戳
     -a:仅修改访问时间
     -m:修改修改时间
     -t:指定时间戳
   先加-m再加-t后跟时间  

元数据属性:stat
       显示文件元数据信息,详细信息
         stat FILE

查看内容类型:file

文件类型
普通文件: -,f

目录文件 :d

链接文件 :l (软连接)

设备文件
字符设备:c

块设备 :b
命名管道:p
fi , fo
套接字文件:

Linux 文件时间戳:
访问时间
修改时间 :写数据

改变时间 :元数据改变的时间

ls :默认选择当前目录
-a :显示所有文件,包括隐藏文件

- A:不现实,和..常见的通用路径

- -color :显示颜色

-l :长格式显示

-d:显示目录自身的属性,通常和-l同时使用

-r:实现逆序显示

-R:递归显示

-i:inode号,index node

-h:文件大小,以人类易读的方式显示

tree :以树状显示

名称解析:name resolving

bash的特性:命令别名
clear:清屏

alias:当前shell中定义的所有别名
任何随进程而生的属性,会在进程结束,属性消失
alias 命令 = '原始命令’
unalias 别名 : 取消定义的别名
在命令前加\使用命令本身,而不是别名

只能查看纯文本文件
file FILE... :查看文件内容的格式
cat :将文本连接起来显示在标准输出上
控制符 如换行符
-E :显示结束符 $
-v :显示非打印字符
-e :等同于 -ve
-n :显示每行顺序编号
-s:将多个连续的空白行合并显示一个空白行
tac:逆序显示
   more:只支持向后翻(文件尾部以后)

   less:支持前后翻

   head
      -n#:显示前多少行

   tail
      -n#:显示后多少行

echo命令的用法
    -e
      \b:删除前面的字符

      \t;制表符

      \v:垂直制表符

      \n:换行符
      \ONNN
        开始\033[# #
               #3前景色 (1-7)
               #4背景色
        结束\033[0m
      -n:不为显示内容自动换行

文件操作
  cp SRC DEST
   假如SRC是一个文件
      如果目标是一个文件且目标存在,覆盖
      如果目标文件不存在,创建新文件
      如果目标存在且是个目录,复制源至目标目录中,并保持原名
   假如SRC有多个文件
      如果目标是一个文件且目标存在,复制无法完成

      如果目标文件不存在,复制无法进行

      如果目标存在且是个目录,复制各文件至目标目录中,且保持原名
   假如SRC只有一个,且是个目录  -r

      如果目标是一个文件且目标存在,复制无法完成

      如果目标文件不存在,创建一个新目录

      如果目标存在且是个目录,复制各文件至目标目录中,且保持原名

bash shell 的特性 :globbing ,文件名通配
   *:匹配任意长度的任意字符

   ?:匹配单个字符

   []:匹配指定字符范围内的任意单个字符,不区分大小写
    [[:upper:]]  大写字母

    [[:lower:]]  小写字母

    [[:alpha:]]  大小写字母

    [[:digit:]]  数字

    [[:alnum:]]  数字字母混合

    [[:space:]]  空格

    [[:punct:]]  标点符号  特殊字符
   [^]:匹配指定字符范围外的任意单个字符

练习:
  

      

       复制/etc目录下以P开头,中间跟了任意字符,并以d结尾的文件至/tmp目录中
          #cp -r /etc/p*d /tmp
       复制/etc目录下以P开头,中间跟了4个任意字符,并以d结尾的文件至/tmp/a目录中:       如果a不存在,先创建出来
         #mkdir /tmp/a
          cp -r /etc/p????d /tmp/a
       复制/etc目录下以任意一位数字开头,并以非数字结尾的文件至、/tmp/b目录下
          #mkdir /tmp/b
          cp -r /etc/[[:digit:]]*[^[:digit:]] /tmp/b
      复制/etc目录下以非字母开头,后面跟了一个字母及其它任何长度字符的文件至/tmp/c目      录中
          #mkdir /tmp/c
          cp -r /etc/[^[:alpha:]][[:alpha:]]* /tmp/c
      
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息