linux常用文件管理命令和用户管理命令

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

cp:文件复制

    用法:cp    [选项]  (源文件)(目标文件)

如果目标文件存在则会提示是否覆盖
单源复制:如果目标文件不存在,则会事先创建文件,并且复制源文件的数据流到目标文件


多源复制:目标文件必须是目录,然后分别将源文件复制到目标目录并保持原名

:注意,复制目录需要加 -r

常用选项:

    -i:交互式复制,即覆盖是之前提示用户确认

    -f:强制覆盖

    -r = -R:递归复制目录 

    -d:只复制符号链接文件本身,而非指向的源文件

mv:移动文件

    用法:mv 【选项】【源文件】【目标文件】 


如果目标文件存在则会提示是否覆盖


如果不给目标文件指定名,就会以源文件名

            注意:mv和cp的区别,mv移动文件以后源文件不会被保留,cp则会保留源文件

常用选项 :

    -i:交互式复制,如果目标文件里面有数据有提示用户是否覆盖

    -r:强制覆盖;

ls:列出指定目录的内容

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

以长格式列表显示,

常用选项 :

    -a:显示所有文件,包括以 . 开头隐藏文件

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

    -d:只显示目录本身,不显示目录下的文件

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

    -h:显示文件大小

    -t:逆序显示,由近到远

    -r:和其他选项一起使用,使之反向排序

cat:显示文件内容

    用法:cat【选项】【file】:一次显示整个文件


-n显示所有的行号,

常用选项

        -n:显示所有行号

        -b:对于空白行不显示编号

        -s:当遇到有连续两行以上的空白行,就代换为一行的空白行

        -T:将 TAB 字符显示为 ^

        -E:在每行结束处显显示$

more和less:分页查看文件内容

    用法:more【选项】【filename】

显示一屏,等待翻屏

常用选项 :

        -p : 显示下一屏之前先清屏。

        +num: 从第num行开始显示

        -num:一次显示的行数

        -c:从顶部清屏然后显示

          空格键:向下翻一屏

          b键:向上翻一屏

          回车键:向下翻一行

          q键:退出

less:less比more更强大,提供翻页,跳转,查找等命令

    用法:more【选项】【filename】

显示一屏,等待翻屏

常用选项 :

        -e : 当文件显示结束后,自动退出

        / : 查找指定字符

        -i:忽略搜索时的大小写

        -g:只标志最后搜索的关键词

        -m:显示类似more命令的百分比

head :查看文件开头

    用法: head【选项】【filen ame】:默认显示行首10行

指定只显示开头5行

常用选项:

    -n:指定输出的行数:也可以直接 -#:列如 head -5 test.txt

    -c:输出的字节数

tail:查看文件结尾

    用法:tail 【选项】【filename】:默认显示行尾10行

只显示最后5行

常用选项:

    -n # : 指定行数

    -f:查看文件尾部内容结束后不退出,跟随着显示新增的行 ;Ctrl +c 结束

touch: 创建文件

    touch [OPTION]... FILE...


创建test1

常用选项:

    -c:指定文件路径不存在时不予创建

    -a: 仅修改access time (最近访问)

    -m: 仅修改modify time (最近更改)

    -t:STAMP 指定修改时间

mkdir:创建目录

    mkdir [OPTION]...DIRECTORY

-p:如果上一级目录不存在时在动创建,-v显示创建过程

常用选项: 

    -p:自动按需创建父目录

    -v: verbose:显示详细过程

    -m:MODE:直接给的权限,不然默认

rm:删除文件或目录

    用法:rm 【选项】【filename】


交互式删除,删除之前会提示


强制删除,


删除目录,注意:此操作非常危险

常用选项

    -r:递归删除

    -f: 强制删除

tree命令:以树状分级显示目录

    tree [OPTION] [DIRECTORY]

显示指定目录下所有子目录


只显示指定目录下第一级目录

常用选项

    -L :指定要显示的层级,


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


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

    stat:查看文件元数据

对应上图的参数

File:文件名

Size:文件大小

Blocks:占据磁盘块数

IO Block: 4096:IO块

regular file:文件类型(普通文件)

Device:所在设备

Inode:节点号

Links:被链接的次数

Context:环境

Access:最近访问时间

Modify:最近更改时间

Change:最近改动时间

touch命令:可以修改文件的时间戳

touch [OPTION]... FILE...

-c:指定文件路径不存在时不予创建

-a: 仅修改access time (最近访问)

-m: 仅修改modify time (最近更改)

-t:STAMP 指定修改时间

[root@student ~]# touch -m -t 199801032131.30  group.sh

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

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

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

    1.首先查看selinux是否关闭

centos7需要把selinux关闭,不然无法指定目录


selinux现在是开启状态需要关闭,vim /etc/selinux/config  ,注释:#SELINUX=enforcing  添加SELINUX=disabled  。注意:修改配置文件是永久生效


现在已经关闭


先创建两个组,再创建用户


查看用户信息:UID=5001,基本组=(tom) ,  附加组(jack)
家目录=/tmp/tom,    用户shell=/bin/zsh

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

groupadd:添加组

    用法:group [option] group_name

创建组test1

常用选项:

    -g :指定GID,默认是在上一个组GID+1

    -r :创建系统组

useradd:添加用户

      用法:useradd [option] user_name

创建用户test2

常用选项:

    -u:指定UID

    -g:指定基本组,此组必须存在

    -G:指定附加组,指定多个组时可以用逗号隔开

    -d:指定家目录

    -s:指定默认shell,可用所有shell,在/etc/shells

    -r:创建系统用户

    -M:不创建用户家目录

groupmod:修改组属性

    用法:groupmod 【option】group_name 


修改组名

常用选项:

    -n:修改组名

    -g:修改gid

usermod:修改用户属性

    用法:usermod 【option】user_name


修改用户名

常用选项:

    u:--uid:修改用户的ID为此处指定的新ID

    -g: --gid:修改用户所属的基本组

    -G:usermod -a -G  newgroup namegroup :修改用户所属的附加组,原来的附加组会被覆盖

    -a:与-G一同使用,用于为用户追加新的附加组

    -c: 修改注释信息

    -d:修改用户的家目录,用户原有的家目录文件不会被移至新的位置

    -m: 只能与-d一同使用,用于将原来的家目录移动至新的家目录

    -l:修改用户名

    -s:修改用户的默认shell

    -L:锁定用户密码,即在用户原来的密码字符串之前添加“!”

    -U: 解锁用户的密码

groupdel:删除组   

    用法:groupdel group_name


userdel:删除用户

    用法:userdel【option】user_name

    -r:删除用户时同时删除家目录

passwd:修改密码

    passwd:修改用户自己的密码

    passwd username :修改指定用户的密码,只有root有此权限

    用法:passwd【option】user_name

    -stdin(标准输入) :配合管道可以直接修改密码

用法:echo “PASSWORD” | passwd --stdin  username &>/dev/null :通过管道给passw命令直接修改密码,&>/dev/null的意思是无论成功或失败把结果输出到/dev/null

常用选项:

    -u:解锁用户

    -l:锁定用户

    -d:清楚用户密码

gpasswd:修改组密码   

    组密码文件:/etc/gshadow

    用法: gpasswd [option] group


    -a USERNAME :向组中添加用户

    -d USERNAME :从组中移除用户


id:显示用户的真和有效id

  用法:  id [option] username


id查看自身信息

常用选项:

    -u:仅显示有效的UID

    -g:仅显示用户的基本组ID

    -G:仅显示用户的附加组ID

    -n:显示名字而非ID

su命令:切换用户

    登录式切换:会通过读取目标用户的配置文件来重新初始化

        su - username

        su -l username


登录时切换,切换用户并且加载用户配置文件

    非登录式切换:不会读取目标用的配置文件进行初始化

        su username


非登录时切换,只切换用户不会重新加载用户配置文件


su - test -c 'id' :以test用户的身份运行id命令


第一次写博客,肯定会有很多欠缺的地方请大家多多指教。谢谢观看

你可能感兴趣的:(linux常用文件管理命令和用户管理命令)