1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
文件管理类命令,常用有:cp mv rm touch
cp——复制
用法:
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
单源复制:cp [options]... [-T] SOURCE DEST
如果DEST不存在:
则事先创建此文件,并复制源文件的数据流至DEST中
如果DEST存在:
如果DEST是非目录文件,则覆盖目标文件
如果DEST是目录文件,则现在DEST目录下创建一个与源文件同名的文件,并复制其数据流
多源复制:cp [options]... SOURCE... DEST
如果DEST不存在:错误;
如果DEST存在:
如果DEST是非目录文件:错误
如果DEST是目录文件:分别复制每个文件至目标目录中
常用选项:
-i:交互式复制,即覆盖之前提醒用户确认
-f:强制覆盖目标文件
-r,-R:递归复制目录
-d:复制符号链接文件本身,而非指向的源文件
-a:-dR --preserve=all,archive,用于归档文件
--perserv=
mode:权限
ownership:属主和属组
timestamps:时间戳
context:安全标签
xattr:扩展属性
links:符号链接
all:上述所有属性
示例:cp -rf /etc/* /tmp/abc/
mv——移动
用法:
mv [OPTION]... [-T] SOURCE DEST,单源移动
mv [OPTION]... SOURCE... DIRECTORY,多源移动
mv [OPTION]... -t DIRECTORY SOURCE...
-i:交互式
-f:强制
示例:mv /etc/sysconfig/network /tmp
rm——删除
用法:rm [options]... FILE...
-i:interactive,交互式删除
-f:force,强制删除
-r:recursive,递归删除目录
示例:rm -rf /*
touch——更新文件时间戳,常用于创建文件
用法:touch [OPTION]... FILE...
-c:指定的文件不存在时不予创建
-a|-m:仅修改access time|modify time
-t STAMP
[[CC]YY]MMDDhhmm[.ss]
示例:touch ab.txt
2、使用命令行展开功能,创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b,在/tmp目录下创建目录:x_y, x_z, q_y, q_z
mkdir -p {/tmp/{x,q}_{y,z},/tmp/{a1/{a,b},a2}}
3、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
文件的元数据信息有三类,分别是
access time:访问时间, atime,读取文件内容
modify time: 修改时间, mtime,改变文件内容(数据)
change time: 改变时间, ctime,元数据发生改变
使用stat命令查看文件的时间戳,例如 stat /etc/passwd
修改时间戳命令为 touch -a 修改最近访问时间
touch -m 修改最近修改时间
4、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
touch tfile-$(date +%F-%H-%M-%S)
5、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
先创建目录:mkdir /tmp/mytest1
再进行复制:cp -r /etc/p*[^0-9] /tmp/mytest1
6、创建用户tom,指定UID为5001,指定家目录为/tmp/tom, 指定shell为/bin/zsh, 指定基本组为tom,附加组为jack
先创建组tom和jack:groupadd tom && groupadd jack
再创建用户tom并指定参数:useradd -u 5001 -g tom tom -G jack -d /tmp/tom -s /bin/zsh
备注:指定家目录为/tmp/tom,需要关闭安全选项,然后才能生成对应的目录。
7、常用的用户以及用户组管理命令有哪些,并演示命令以及用法。
常用的用户管理类命令有:useradd usermod userdel
useradd -u 1005 kk //创建用户kk,指定uid为1005
usermod kk -u 1010 -l ck //把用户kk更名为ck,并修改uid为1010
userdel -r ck //删除用户ck,及其家目录
常用的用户组管理类命令有:groupadd groupmod groupdel
groupadd -r john 添加系统组john
groupmod -n root linuxcool 更改linuxcool用户组为root
groupdel john 删除组john