作业2025 10.15
1. 基础文件和目录操作
(1) 创建目录和空文件
命令:
mkdir -p ~/test_dir && touch ~/test_dir/test_file.txt
- 说明: mkdir -p 递归创建目录(确保路径存在), touch 创建空文件。
(2) 复制并重命名文件
命令:
cp ~/test_dir/test_file.txt /tmp/copy_of_test.txt
- 说明: cp 复制文件,同时指定新路径和新文件名完成重命名。
(3) 删除目录及其所有内容
命令:
rm -rf ~/test_dir
- 说明: rm -rf 强制递归删除目录及其中所有文件
(4) 创建文件及软硬链接
- 先重建目录和文件(若已删除):
mkdir -p ~/test_dir && touch ~/test_dir/test_file.txt
- 创建软链接
ln -s ~/test_dir/test_file.txt ~/test_dir/soft_link.txt
- 创建硬链接:
ln ~/test_dir/test_file.txt ~/test_dir/hard_link.txt
- 说明: ln -s 创建软链接(符号链接), ln 不带选项创建硬链接。
(5) 测试软硬链接的可访问性
- 删除原文件:
rm ~/test_dir/test_file.txt
- 查看软链接:
cat ~/test_dir/soft_link.txt
- 结果:无法访问。原因:软链接是指向原文件路径的“快捷方式”,原文件删除后,路径失效。
- 查看硬链接:
cat ~/test_dir/hard_link.txt
- 结果:可以访问。原因:硬链接是与原文件共享“inode”的副本,原文件删除后,硬链接仍指向实际数据(只要有一个硬链接存在,数据就不会被删除)。
2. 文件内容查看与编辑
(1) 查看文件前10行
命令:
head -10 /etc/passwd
- 说明: head -n 查看文件前 n 行,默认 n=10 。
(2) 追加内容并验证
- 追加内容:
echo "这是追加的测试内容" >> /tmp/copy_of_test.txt
- 查看内容:
cat /tmp/copy_of_test.txt
- 说明: echo "内容" >> 文件名 向文件追加内容; cat 查看文件全部内容。
(3) 文本编辑替换内容(以vim为例)
- 打开文件:
vim /tmp/copy_of_test.txt
- 在vim中执行替换命令(命令模式下输入):
vim
:%s/测试/练习/g
- 保存并退出:
vim
:wq
- 说明: :%s/原内容/新内容/g 全局替换文件中所有“原内容”为“新内容”; :wq 保存并退出。
3. 综合操作
(1) 创建目录并复制指定文件
- 创建目录:
mkdir -p /home/backup
- 复制文件:
cp /etc/*.conf /home/backup/
- 说明: *.conf 是通配符,匹配所有以 .conf 结尾的文件; cp 批量复制到目标目录。
(2) 统计目录中文件数量
命令:
find /home/backup -type f | wc -l
- 说明: find -type f 查找目录中所有普通文件, wc
3.
(3) 打包压缩并删除原目录
- 命令:
ba
tar -zcvf /home/etc_backup.tar.gz /home/backup && rm -rf /home/backup
- 说明: tar -zcvf 用于创建 gzip 格式的压缩包( -z 启用gzip压缩, -c 创建包, -v 显示过程, -f 指定文件名);压缩完成后用 rm -rf 删除原目录。
4. 文件权限管理
(1) 修改文件所有者和所属组
- 命令:
bash
chown user1:group1 /tmp/copy_of_test.txt
- 说明: chown 所有者:所属组 文件名 同时修改文件的所有者和所属组。
(2) 设置文件权限(所有者rwx、所属组rx、其他用户r)
- 命令(数字权限法):
bash
chmod 754 /tmp/copy_of_test.txt
- 命令(符号权限法):
bash
chmod u=rwx,g=rx,o=r /tmp/copy_of_test.txt
- 说明: 754 对应 rwxr-xr-- (所有者7=4+2+1,所属组5=4+1,其他用户4=4);符号法中 u 代表所有者, g 代表所属组, o 代表其他用户。
(3) 查看文件详细权限信息
- 命令:
bash
ls -l /tmp/copy_of_test.txt
- 说明: ls -l 显示文件的详细属性,包括权限、所有者、所属组等信息。
5. 用户和用户组基础操作
(1) 创建普通用户并指定登录Shell
- 命令:
ba
useradd -s /bin/bash newuser1
- 说明: useradd -s 指定用户的默认登录Shell, /bin/bash 是Linux常见的交互式Shell。
(2) 创建用户组并添加用户
- 先创建用户组:
bash
groupadd newgroup1
- 再将用户添加到组:
bash
usermod -a -G newgroup1 newuser1
- 说明: groupadd 创建新用户组; usermod -a -G 将用户追加到指定组( -a 表示追加, -G 指定组)。
(3) 删除用户并保留家目录
- 命令:
bash
userdel newuser1
- 说明: userdel 默认保留用户家目录;若要同时删除家目录,需加 -r 选项(如 userdel -r newuser1 ),此处按需求保留,故不加 -r 。
6. 文件和目录权限设置与修改
(1) 创建目录、文件并设置权限
- 先创建目录和文件:
bash
mkdir -p ~/perm_test_dir && touch ~/perm_test_dir/perm_test_file.txt
- 设置目录权限(所有者rwx、所属组rx、其他用户无权限):
bash
chmod 750 ~/perm_test_dir
- 设置文件权限(所有者rw、所属组r、其他用户r):
bash
chmod 644 ~/perm_test_dir/perm_test_file.txt
- 说明: 750 对应目录权限 rwxr-x--- , 644 对应文件权限 rw-r--r-- 。
(2) 修改目录及下属文件的所属组
- 命令:
chgrp -R newgroup1 ~/perm_test_dir
- 说明: chgrp -R 递归修改目录及其中所有文件的所属组。
(3) 递归修改目录权限(所有者和所属组rwx、其他用户r)
- 命令(数字权限法):
chmod -R 774 ~/perm_test_dir
- 命令(符号权限法):
chmod -R u=rwx,g=rwx,o=r ~/perm_test_dir
- 说明: -R 表示递归应用权限到目录内所有文件; 774 对应 rwxrwxr-- (所有者7、所属组7、其他用户4)。