博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第二周
阅读量:5291 次
发布时间:2019-06-14

本文共 6972 字,大约阅读时间需要 23 分钟。

1. Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示.

文件系统操作命令-目录

  • ls查看文件或目录的工具

    用法:ls [选项]...[文件]...

    -l 出文件名之外,列出文件的类型、权限、所有者、所属组、文件大小、修改时间等详细信

    -a 显示所有以.开关的项目

    -A 列出除.及..以外的斜体项目

    -R 递归列出目录内容,若目录下有文件或子目录,则以下所有文件皆按序列出

    -n 类似-l,但列出UID及GID号

    -F 在列出的文件名后加一个符号,去区分文件类型;例如*代表可执行文件;/代表是目录;@代表链接文件;普通文件之后不加符号

  • 实例:

    [root@etcd01 opt]# ls -alFtotal 4415492drwxr-xr-x.  5 root root         88 Mar 19 01:41 ./dr-xr-xr-x. 20 root root       4096 Mar 13 20:49 ../-rw-r--r--   1 root root 4521459712 Dec  6 17:25 CentOS-7.4-x86_64-DVD-1708.isodrwx--x--x   4 root root         26 Feb 27 22:38 containerd/drwxr-xr-x   5 root root         36 Mar 13 11:17 etcddrwxr-xr-x   5 root root         36 Mar 19 01:41 kubernetes/

cd 更改目录,切换目录

  • 用法:cd 目标目录

    【选项】

    . 当前目录

    ..父目录

    cd .. 切换到父目录,切换到上一级目录

    cd 切换到当前用户家目录

    cd ~ 切换到当前用户家目录

    cd - 返回上一次所处的目录

    cd  类似于cd “test” 命令中的双引号(也可以是单引号);切换到名称带有空格的目录

  • 实例:

    [root@etcd01 ~]# cd /opt/[root@etcd01 opt]# cd kubernetes/[root@etcd01 kubernetes]# cd -/opt

pwd 显示当前所处的目录

  • 【选项】

    pwd -p 显示实际的工作目录,而非使用链接路径

    [root@etcd01 opt]# pwd -P/opt

mkdir1创建目录

  • 【选项】

    mkdir 只能在已存在的目录下创建目录

    mkdir -p 帮助你直接将所需的目录递归创建起来。(在一个不存在的上级目录里面创建目录)

rmdir 删除空目录

  • 【选项】

    rmdir 只能删除空目录

    rmdir -p 递归删除空目录

rm 删除文件或目录

  • 【选项】

    rm 只能删除文件

    rm -r 删除目录及目录下的项目(文件和目录)

    rm -f 不提示强制删除

  • 【实例1】

    rm -rf *

    强制删除所有文件,但是不包含隐藏文件。谨慎使用!!!!

  • 【实例2】

    同时删除多个文件或目录

    每个项目以空格隔开

    [root@etcd01 tmp]# rm -rf {a,b,c}

mv 移动文件或目录

  • mv 原文件路径 目标文件路径 移动

    【选项】

    -f 不提示并覆盖文件

    -n 不覆盖已存在文件

    -b 覆盖之前把原文件做备份,备份的文件在文件名之后有个~符号

    -u 只有原文件比覆盖的文件新的时候才可以覆盖文件;旧文件不能覆盖新文件

du 显示目录的磁盘使用情况

  • du查看目录或文件大小


    -a--all显示目录中个别文件的大小

    -b--bytes 显示目录或文件时,以byte为单位.

    -c--total 除了显示个别目录或文件的大小外,同时民显示所有目录或文件的总和

    -D--dereference-args 显示指定符号连接的源文件大小

    -h--human-readable 以K,M,G为单位,提高信息的可读性

    -H--si-h参数相同,但是K,M,G是以1000为换算单位

    -k--kilobytes以1024 bytes为单位

    -l--count-links 重复计算硬件连接的文件

    -L--dereference显示选项中指定符号连接的源文件

    -m--megabytes 以1MB为单位

    -s--summarize仅显示总计

    -S--separate-dirs 显示个别目录的大小时,并不含其子目录的大小

    -x--one-file-xystem 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过

    -X--exclude-from=<文件>在指定目录或文件

    --exclude=<目录或文件>略过指定的目录或文件

    --max-depth=<目录层数> 超过指定层数的目录后,予以忽略。

    --help 显示帮助

    --version 显示版本信息

  • 实例


    [root@etcd01 kubernetes]# lsbin  cfg  ssl[root@etcd01 kubernetes]# du -h --exclude=bin16K     ./cfg16K     ./ssl

df查看所有已挂载磁盘使用情况

  • 实例

    [root@etcd01 kubernetes]# df -hFilesystem               Size  Used Avail Use% Mounted on/dev/mapper/centos-root   46G   29G   18G  62% /devtmpfs                 7.8G     0  7.8G   0% /devtmpfs                    7.8G     0  7.8G   0% /dev/shmtmpfs                    7.8G  704M  7.1G   9% /runtmpfs                    7.8G     0  7.8G   0% /sys/fs/cgroup/dev/sda1                497M  158M  340M  32% /boot/dev/loop0               4.3G  4.3G     0 100% /mnt/cdromtmpfs                    1.6G     0  1.6G   0% /run/user/0

    注解

    第一列: 文件系统对应的磁盘分区第二列:分区的总空间大小,含的数据块的数据第三列:已使用空间大小第四列:未使用空间大小第五列:用户空间使用的百分比第六列: 文件系统的挂载点

2. 使用命令行展开功能,创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b,在/tmp目录下创建目录:x_y, x_z, q_y, q_z

  • 实例

    [root@etcd03 /]# mkdir -pv /tmp/a{1/{a,b},2}mkdir: created directory ‘/tmp/a1’mkdir: created directory ‘/tmp/a1/a’mkdir: created directory ‘/tmp/a1/b’mkdir: created directory ‘/tmp/a2’[root@etcd03 /]# mkdir -pv /tmp/{x,q}_{y,z}mkdir: created directory ‘/tmp/x_y’mkdir: created directory ‘/tmp/x_z’mkdir: created directory ‘/tmp/q_y’mkdir: created directory ‘/tmp/q_z’

3.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。

  • 元数据信息:

    file:文件名;

    size:文件大小

    block:文件占了多少个数据块

    IO Block:文件所占数据块的块大小

    Device:硬件,既说明该文件在硬盘的那个柱面

    Inode:文件Inode号,文件的索引节点号

    links:链接

    Access:文件权限

    Uid:该文件所属的属主

    Gid:该文件所属的属组

    context:安全上下文

    Access(第二个):文件上一次的访问时间

    Modify:文件上一次修改的时间

    Change:文件上一次属性更改的时间

  • 查看文件元数据的方法

    stat命令:

stat [OPTION]... FILE...[root@etcd03 ~]# stat /etc/issue  File: ‘/etc/issue’  Size: 23              Blocks: 8          IO Block: 4096   regular fileDevice: fd01h/64769d    Inode: 67192987    Links: 1Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)Access: 2019-04-08 09:42:19.438089565 +0800Modify: 2017-08-30 23:53:07.000000000 +0800Change: 2018-04-16 15:26:42.557988341 +0800 Birth: -

修改文件的时间戳方法:

touch命令:用于改变文件时间戳,如果文件不存在则创建一个空文件

touch [OPTION]... FILE...  -c:指定的文件路径不存在时不予创建:-a:仅修改access time:-m:仅修改modify time:-t STAMP:    [[CC]YY]MMDDhhmm[.ss] 年月日时分秒    touch -m -t 200212010303.03

4.在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22

  • 实例

    [root@etcd03 tmp]# touch `date +%Y-%m-%d-%H-%M-%S`[root@etcd03 tmp]# ls2019-04-08-18-14-06

5. 复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。

  • 实例

    [root@etcd03 tmp]# mkdir mytest1[root@etcd03 tmp]# cp -rv /etc/p*[^0-9] mytest1/

6. 创建用户tom,指定UID为5001,指定家目录为/tmp/tom, 指定shell为/bin/zsh, 指定基本组为tom,附加组为jack

  • 实例

    [root@etcd03 tmp]# groupadd jack[root@etcd03 tmp]# useradd -u 5001 -d /tmp/tom/ -s /bin/zsh -G jack tom[root@etcd03 tmp]# cat /etc/passwd grep tom[root@etcd03 tmp]# cat /etc/passwd |grep tomtom:x:5001:5001::/tmp/tom/:/bin/zsh[root@etcd03 tmp]# id tomuid=5001(tom) gid=5001(tom) groups=5001(tom),1003(jack)

7. 常用的用户以及文件管理命令有哪些,并演示命令以及用法。


useradd、userdel、usermod、passwd、groupadd、groupdel、groupmod、gpasswd、chage、chsh、id、su

  • useradd命令:创建用户

    useradd  [OPTION]  USER-u, --uid UID:指定UID;-g, --gid GROUP:指定基本组ID,此组得事先存在;-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;-c, --comment COMMENT:指明注释信息;-d, --home HOME_DIR:以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件;-s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;-r, --system:创建系统用户;
  • userdel命令:删除用户

    userdel [OPTION] USER    -r:删除用户时一并删除其家目录;
  • usermod命令:修改用户属性

    usermod [OPTION] USER    -u, --uid UID:修改用户的ID为此处指定的新UID;    -g, --gid GROUP:修改用户所属的基本组;    -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;    -a, --append:与-G一同使用,用于为用户追加新的附加组;    -c, --comment COMMENT:修改注释信息;    -d, --home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;    -m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;    -l, --login NEW_LOGIN:修改用户名;    -s, --shell SHELL:修改用户的默认shell;    -L, --lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";    -U, --unlock:解锁用户的密码;
  • passwd命令:修改用户密码

    passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [--stdin] [username]    (1) passwd:修改用户自己的密码;    (2) passwd USERNAME:修改指定用户的密码,但仅root有此权限;        -l, -u:锁定和解锁用户;        -d:清除用户密码串;        -e DATE: 过期期限,日期;        -i DAYS:非活动期限;        -n DAYS:密码的最短使用期限;        -x DAYS:密码的最长使用期限;        -w DAYS:警告期限;        --stdin:        echo "PASSWORD" | passwd --stdin USERNAME
  • groupadd命令:添加组

    groupadd [OPTION] group_name    -g GID:指定GID;默认是上一个组的GID+1;    -r: 创建系统组;
  • groupdel命令:删除组

    groupdel [OPTION] GROUP
  • groupmod命令:修改组属性

    groupmod [OPTION] GROUP    -g GID:修改GID;    -n new_name:修改组名;
  • gpasswd命令:管理组

    组密码文件:/etc/gshadowgpasswd [OPTION] group    -a USERNAME:向组中添加用户    -d USERNAME:从组中移除用户
  • chage命令:更改用户密码过期信息

    chage [OPTION] 登录名    -d    -E    -W    -m    -M
  • id命令:显示用户和所属群组的实际与有效ID

    id [OPTION]... [USER]    -u: 仅显示有效的UID;    -g: 仅显示用户的基本组ID;     -G:仅显示用户所属的所有组的ID;    -n: 显示名字而非ID;
  • su命令:切换用户

    登录式切换:会通过读取目标用户的配置文件来重新初始化    su - USERNAME    su -l USERNAME非登录式切换:不会读取目标用户的配置文件进行初始化    su USERNAME注意:管理员可无密码切换至其它任何用户;-c 'COMMAND':仅以指定用户的身份运行此处指定的命令;

转载于:https://www.cnblogs.com/linux-timke/p/10674316.html

你可能感兴趣的文章
iframe的父子层跨域 用了百度的postMessage()方法
查看>>
图片生成缩略图
查看>>
关于Mysql select语句中拼接字符串的记录
查看>>
动态规划 例子与复杂度
查看>>
查看oracle数据库的连接数以及用户
查看>>
【数据结构】栈结构操作示例
查看>>
中建项目环境迁移说明
查看>>
三.野指针和free
查看>>
activemq5.14+zookeeper3.4.9实现高可用
查看>>
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>
Spark基础脚本入门实践3:Pair RDD开发
查看>>
HDU4405--Aeroplane chess(概率dp)
查看>>
CS0103: The name ‘Scripts’ does not exist in the current context解决方法
查看>>
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>
窥视SP2010--第一章节--SP2010开发者路线图
查看>>
MVC,MVP 和 MVVM 的图示,区别
查看>>
C语言栈的实现
查看>>