1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
1.1 创建文件
- touch FILE
- mkdir DIR
- mkdir -p DIR1/DIR2/DIR3/ 递归创建子目录
- > FILE 后直接跟文件路,利用输出重定向创建空文件
1.2 查看文件
- ls - list directory contents 查看目录下的文件
- ls -l :显示文件属性信息
- ll -d:显示目录本身的属性信息
- ls -a:显示全部文件,包括隐藏文件
- ll -h: 对文件大小进行换算
- ls -R:递归显示
- ls -r:逆序显示
- cd - 切换目录;
- cd ~ 切换至家目录
- cd .. 切换至上一级目录
- cd / 切换至根目录下
- pwd 显示当前工作路径
- basename 目录基名
- dirname 路径名
- 查看文本命令:
- cat、tac
- head、tail
- more、less
1.3删除、复制、移动文件
- rm remove删除文件
- rm -rf 强制,递归删除
- cp 复制文件
- cp -r 复制文件夹
- cp -a 复制全部文件
- cp -v 显示复制过程
- cp -i 提醒
mv 移动文件,常用来重命名
1.4 查找
- find
- find /etc -iname "a*" -type d -user root -group root -size 5 -perm /444 -ls
- which 查找命令的完整路径
- whereis
1.5 修改
- nano
- vim
2.使用命令行展开功能,创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b,在/tmp目录下创建目录:x_y, x_z, q_y, q_z
- mkdir -p /tmp/{a1/{a,b},a2}
- mkdir -p /tmp/{x,q}_{y,z}
- tree /tmp
3.文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
stat
命令可查看文件的元数据
[root@CentOS7 ~]#stat /etc
File: ‘/etc’
Size: 8192 Blocks: 24 IO Block: 4096 directory
Device: 802h/2050d Inode: 67160129 Links: 134
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:etc_t:s0
Access: 2018-11-25 09:07:12.143720108 +0800
Modify: 2018-11-25 07:46:00.521729995 +0800
Change: 2018-11-25 07:46:00.521729995 +0800
Birth: -
touch
命令可修改文件时间戳
touch -a # 改变atime和ctime
touch -m # 改变mtime和ctime
touch -d, --data= #改变日期,但是ctime显示的仍是改变日期的时间(只改变atime和mtime)
touch -t [[CC]YY]MMDDhhmm[.ss] # 改变日期时间,但是ctime显示的仍是改变日期的时间(只改变atime和mtime)
touch -r, --reference=FILE # 用指定文件的时间改变当前文件的时间,同理,ctime显示的仍是改变操作的时间
4.在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
touch "tfile`date +%F %T`"
5.复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
第一步:mkdir /tmp/mytest1
第二步:cp -arv /etc/p*[^0-9] /tmp/mytest1
6.创建用户tom,指定UID为5001,指定家目录为/tmp/tom, 指定shell为/bin/zsh, 指定基本组为tom,附加组为jack
第一步:groupadd jack
创建组jack
第二步:useradd -u 5001 -s /bin/zsh -G jack -d /tmp/tom tom
注意:
直接useadd -d /tmp/tom
会报错:useradd: cannot set SELinux context for home directory /tmp/tom
解决方法:setenforce 0 # 关闭Linux防火墙,这样再useradd -d 就可以顺利操作了