zoukankan      html  css  js  c++  java
  • Linux学习笔记-文件处理和权限命令

    文件处理命令

    touch

    名称:touch
    所在路径:/bin/touch
    执行权限:所有用户
    语法:touch[文件名]
    功能描述:创建空文件

    [root@localhost tmp]# mkdir a
    [root@localhost tmp]# touch /tmp/a/b.txt
    [root@localhost tmp]# touch t.txt
    [root@localhost tmp]# ls
    a                 systemd-private-3a13c84be30540cf8c9aa032e5f76ba0-vmtoolsd.service-O4mYxW  yum.log
    jps.txt           systemd-private-72347dcd610e454abc47df15e5885dce-vmtoolsd.service-rwgKA3
    ks-script-YpfpfJ  t.txt
    #如果有空格则会创建两个文件,这种情况需要用双引号引起来,不过不推荐含有空格
    #的文件名
    [root@localhost tmp]# touch program files
    [root@localhost tmp]# ls
    a        ks-script-YpfpfJ                                                          systemd-private-72347dcd610e454abc47df15e5885dce-vmtoolsd.service-rwgKA3
    files    program                                                                   t.txt
    jps.txt  systemd-private-3a13c84be30540cf8c9aa032e5f76ba0-vmtoolsd.service-O4mYxW  yum.log
    [root@localhost tmp]#
    

    cat

    名称:cat
    命令所在目录:/bin/cat
    执行权限:所有用户
    语法:cat[文件名]
    功能描述:显示文件内容
    -n显示行号

    [root@localhost tmp]# cat /etc/issue
    S
    Kernel 
     on an m
    
    [root@localhost tmp]# cat -n /etc/issue
         1  S
         2  Kernel 
     on an m
         3
    

    tac

    命令名称:tac
    所在路径:/usr/bin/tac
    执行权限:所有用户
    语法:cat[文件名]
    功能描述:显示文件内容(反向列式)

    
    [root@localhost tmp]# tac /etc/issue
    
    Kernel 
     on an m
    S
    
    

    more

    命令名称:more
    所在路径:/bin/more
    执行权限;所有用户
    语法:more[文件名]
    (空格)或f 翻页
    (Enter) 换行
    q或Q 退出
    功能描述:分页显示文件内容。

    [root@localhost tmp]# more /etc/services
    # /etc/services:
    # $Id: services,v 1.55 2013/04/14 ovasik Exp $
    #
    #内容太多,执行上述语法可以执行相应操作
    

    less

    命令名称:less
    所在路径:/bin/less
    执行权限;所有用户
    语法:less[文件名]
    功能描述:分页显示文件内容。(可向上翻页)
    不仅使用more的命令,还可以使用上下箭头换行,pageup和pagedown换页
    ,另外输入/可以进行查找,按n查找下一处。shift+n上一处

    命令名称:head
    所在路径:/usr/bin/lhead
    执行权限;所有用户
    语法:head[文件名]
    功能描述:显示文件前几行。
    -n 指定行数(默认前10行)

    #查看前4行。
    [root@localhost tmp]# head -4 /etc/services
    # /etc/services:
    # $Id: services,v 1.55 2013/04/14 ovasik Exp $
    #
    # Network services, Internet style
    

    tail

    命令名称:tail
    所在路径:/usr/bin/lhead
    执行权限;所有用户
    语法:tail[文件名]
    功能描述:显示文件后几行。
    -n 指定行数(默认后10行)
    -f 动态显示文件末尾内容(适合监控日志)

    链接命令

    ln

    名称:ln
    英文原义:link
    命令所在路径:/bin/ln
    执行权限:所有用户
    语法:ln -s [原文件][目标文件]
    -s 创建软链接(不加-s是硬链接)
    功能描述:生成链接文件

    软链接:
    
    [root@localhost tmp]# ln -s /etc/issue /tmp/issue.soft
    [root@localhost tmp]# ls -l /etc/issue
    -rw-r--r--. 2 root root 23 11月 30 2016 /etc/issue
    [root@localhost tmp]# ls -l /tmp/issue.soft
    lrwxrwxrwx. 1 root root 10 8月  30 21:55 /tmp/issue.soft -> /etc/issue
    

    lrwxrwxrwx(特点:l开头,3个rw)
    上面的l就是软链接的意思,后面的读写权限,并不是原文件的权限,所有的软链接的权限都这样,其特征类似windows的快捷方式。
    /tmp/issue.soft -> /etc/issue
    同时可知,软链接指向原文件的路径。i结点和原文件不一致。

    硬链接
    [root@localhost tmp]# ls -l /tmp/issue.hard
    -rw-r--r--. 2 root root 23 11月 30 2016 /tmp/issue.hard
    

    硬链接特性
    :拷贝命令cp -p+同步更新
    如果原文件删除了,软链接找不到文件会报错,而硬链接没有影响。i结点和原文件一致。

    权限命令

    chmod

    名称:chmod
    英文原义:change the permissions mode of a file
    命令所在路径:/bin/chmod
    执行权限:所有用户
    语法:chmod [{ugoa}{+-=}{rwx}][文件或目录]
    [mode=421][文件或目录]
    -R 递归修改
    功能描述:改变文件或目录权限。
    u所有者 g所属组 o其他人 a所有人。
    +是加权限 -是减权限。

    [root@localhost tmp]# chmod g=rwx a
    [root@localhost tmp]# chmod g+w,o-r a
    [root@localhost tmp]# chmod u+x a
    

    以上仅供参考,一般用下面数字的方式添加权限。
    r=4(读)
    w=2(写)
    x=1(执行)
    加在一起7
    rwx rw- r--
    7 6 4

    [root@localhost tmp]# chmod 777 a
    [root@localhost tmp]# cd a
    [root@localhost a]# ls -ld
    drwxrwxrwx. 2 root root 19 8月  30 21:25 .
    [root@localhost a]# cd ..
    [root@localhost tmp]# chmod 111 a
    [root@localhost tmp]# cd a
    [root@localhost a]# ls -ld
    d--x--x--x. 2 root root 19 8月  30 21:25 .
    
    [root@localhost a]# chmod 532 /tmp/a
    [root@localhost a]#
    下面是递归修改,改变目录及其下面所有文件。
    [root@localhost tmp]# chmod -R 777 a
    [root@localhost tmp]# cd a
    [root@localhost a]# ls -lh
    总用量 0
    -rwxrwxrwx. 1 root root 0 8月  30 22:24 b.txt
    
    

    以上只是练习一般没有532这种奇葩权限。。。
    上述都是针对文件的解释,如果是操作文件夹才是的rwx的含义如下:
    r:可以列出目录中的内容
    w:可以在目录中创建,删除文件
    x:可以进入目录
    对于目录的权限比较的烧脑,比如:有r权限一定要x权限,因为都能看文件了当然是已经进入目录咯,其他情况类推。

    权限管理命令

    chown

    名称:chown
    英文原义:change file ownership
    命令所在路径:/bin/chown
    执行权限:所有用户
    语法:chown[用户][文件或目录]
    功能描述:改变文件或者目录的所有者
    chown cxa feiq 改变文件feiq的所有者为cxa(前提存在cxa这个用户)

    
    [root@localhost a]# ls -lh
    总用量 0
    -rwxrwxrwx. 1 root root 0 8月  30 22:24 b.txt
    [root@localhost a]# chown cxa b.txt
    [root@localhost a]# ls -lh
    总用量 0
    -rwxrwxrwx. 1 cxa root 0 8月  30 22:24 b.txt
    
    

    chgrp

    名称:chgrp
    英文原义:change file group ownership
    命令所在路径:/bin/chgrp
    执行权限:所有用户
    语法:chgrp[用户组][文件或目录]
    功能描述:改变文件或者目录的所属组

    [root@localhost a]# ls -lh
    总用量 0
    -rwxrwxrwx. 1 cxa root 0 8月  30 22:24 b.txt
    [root@localhost a]# chgrp cxa b.txt
    [root@localhost a]# ls -lh
    总用量 0
    -rwxrwxrwx. 1 cxa cxa 0 8月  30 22:24 b.txt
    #使用groupadd添加一个组dj。
    [root@localhost a]# groupadd dj
    [root@localhost a]# chgrp dj b.txt
    [root@localhost a]# ls -lh
    总用量 0
    -rwxrwxrwx. 1 cxa dj 0 8月  30 22:24 b.txt
    

    umask

    名称:umask
    英文原义:the user file-creation mask
    命令所在路径:shell内置命令
    执行权限:所有用户
    语法:umask[-S]
    -S 以rwx形式显示新建文件缺省权限
    功能描述:显示,设置文件的缺省权限

    
    [root@localhost a]# umask -S
    u=rwx,g=rx,o=rx
    [root@localhost a]# mkdir lamp
    [root@localhost a]# ls -ld lamp
    drwxr-xr-x. 2 root root 6 8月  30 22:42 lamp
    [root@localhost a]# touch r.txt
    [root@localhost a]# ls -ld r.txt
    -rw-r--r--. 1 root root 0 8月  30 22:42 r.txt
    

    根目录下执行umask

    [root@localhost /]# umask
    0022
    0 特殊权限(后面会提)
    022 --- -w- -w-
    777 rwxrwxrwx
    022 --- -w- -w-
    --------------------
    755 rwxr-xr-x 目录(这个实际是上面的逻辑与(即相同的-)算出来的)
        rw-r--r-- 文件
    

    注意:缺省创建的文件是不能具有可执行权限的。

  • 相关阅读:
    leetcode 347. Top K Frequent Elements
    581. Shortest Unsorted Continuous Subarray
    leetcode 3. Longest Substring Without Repeating Characters
    leetcode 217. Contains Duplicate、219. Contains Duplicate II、220. Contains Duplicate、287. Find the Duplicate Number 、442. Find All Duplicates in an Array 、448. Find All Numbers Disappeared in an Array
    leetcode 461. Hamming Distance
    leetcode 19. Remove Nth Node From End of List
    leetcode 100. Same Tree、101. Symmetric Tree
    leetcode 171. Excel Sheet Column Number
    leetcode 242. Valid Anagram
    leetcode 326. Power of Three
  • 原文地址:https://www.cnblogs.com/c-x-a/p/9563235.html
Copyright © 2011-2022 走看看