Linux_command_basic

文件与目录管理

  1. chgrp [-R] groupName fileName

    chown [-R] (groupName:)usrName fileName

    chmod [-R] 777 fileName (u,g,o,a +- rwx)

  2. pwd -p 不以连接方式显示

  3. mdkir -m 777 testDir mkdir -p testDir/testSubDir/testFile

  4. cp -a 复制全属性(权限不够无法更改)

  5. cat -n 显行号 cat -A 可列出特殊字符

  6. head -n 20 head -n -100 后100行都不打印

  7. tail -n +100 打印100行以后的

    head -n 20 fileName | tail -n 10 (第11行到第20行)

  8. SUID SGID SBIT 4 2 1

  9. file 查看文件类型

  10. ls -h 文件大小K或者B(就是人能看)

  11. find

    find [PATH][option][action]

    1. 时间

      -mtime n

      -mtime +n/-n

    2. 用户

      -uid n

      -gid n

      -user name

      -group name

      -nouser/-nogroup (寻找文件所有者[组]不在/etc/passwd[/etc/group])

    3. 文件

      -name fileName

      -size [+-]SIZE

      -type TYPE

      -perm mode

      -perm -mode

      -perm +mode(只要包含这个mode就行)

    4. find /etc -size +50k -size -60k -exec rm {};

    5. find /etc ! -user root -exec ls -l {};

    6. find /etc -size +60k || size -1k -exec ls -l {};

磁盘与文件系统

  1. df 目录或文件名(列出文件系统整体磁盘目录)

    -h (KB MB格式)

    -i (以inode数量显示)

  2. du 目录或文件名 (评估目录所占容量,默认KB)

  3. ln 默认hard link

    -s symbolic link

压缩与打包

  1. tar

数据流重定向

  1. 标准输入 0 < or << < 覆盖, << 添加

    标准输出 1 > or >>

    标准错误输出 2 2> or 2>> (2> /dev/null 错误信息丢弃)

    find / -name '*hehe' > list 2> /dev/null
    find / -name '*haha*' > list 2>&1 (错误信息和正确信息放一起的特殊语法)
    
  2. cat > file < file2

    cat > file << “eof” (键盘输入eof时,输入结束,file不会有eof)

  3. && || 短路效应

管道pipe

  1. cut -d ‘分隔符’ -f fields(注意fields的初始为1)

    echo $PATH | cut -d ':' -f 3,5
    

    cut -c 字符范围

    echo $PATH | cut -c 12-20 (第12-20的字符)
    
  2. grep 参数 ‘字符串’ filename

    -c 找到字符串的次数
    -i 忽略大小写的不同
    -n 输出行号
    -v 反向选择
  3. sort 参数 filename

    -n 使用纯数字排序
    -r 反向
    -u 相同数据仅显示一行
    -t 分隔符
    -k 以特定区间排序
    cat /etc/passwd | sort -t ':' -k 3 -n
    
  4. wc (word_count)

    -l 行
    -w 多少字(英文单字)
    -n 多少字符