From b60a4538a201c91f0754dd9feba1448e50abfd5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8F=B2=E5=AD=A6=E6=96=B0?= <2781716479@qq.com> Date: Thu, 23 May 2024 17:15:33 +0800 Subject: [PATCH] s --- ...66\345\244\271\347\256\241\347\220\206.md" | 155 ++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 "23 \345\217\262\345\255\246\346\226\260/20240523 \346\226\207\344\273\266\345\217\212\346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" diff --git "a/23 \345\217\262\345\255\246\346\226\260/20240523 \346\226\207\344\273\266\345\217\212\346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" "b/23 \345\217\262\345\255\246\346\226\260/20240523 \346\226\207\344\273\266\345\217\212\346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" new file mode 100644 index 0000000..6db53e1 --- /dev/null +++ "b/23 \345\217\262\345\255\246\346\226\260/20240523 \346\226\207\344\273\266\345\217\212\346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" @@ -0,0 +1,155 @@ +假设您刚刚登录到一个Linux系统,并位于您的家目录(`~`)下。您需要完成以下一系列复杂的操作来组织和清理您的文件和目录。请按照顺序执行,并给出相应的命令。 + +1. **创建测试文件**:在家目录下创建三个文本文件,分别命名为`.hidden.txt`(隐藏文件)、`visible1.txt`和`visible2.txt`。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ mkdir .hidden.txt visible1.txt visible2.txt + ``` + + + +2. **列出文件和目录**:列出家目录(`~`)下的所有文件和目录,包括隐藏文件,并查看其详细权限和属性。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ ls -al + total 52 + drwx------ 9 shi02 shi02 4096 May 23 16:27 . + drwxr-xr-x 6 root root 4096 May 21 16:40 .. + -rw------- 1 shi02 shi02 2238 May 23 11:40 .bash_history + -rw-r--r-- 1 shi02 shi02 220 May 21 16:40 .bash_logout + -rw-r--r-- 1 shi02 shi02 3526 May 21 16:40 .bashrc + drwx------ 3 shi02 shi02 4096 May 23 10:21 .config + drwxr-xr-x 3 shi02 shi02 4096 May 23 16:21 development + drwxr-xr-x 2 shi02 shi02 4096 May 23 16:27 .hidden.txt + -rw-r--r-- 1 shi02 shi02 807 May 21 16:40 .profile + drwx------ 2 shi02 shi02 4096 May 21 17:05 .ssh + drwxr-xr-x 2 shi02 shi02 4096 May 23 16:27 visible1.txt + drwxr-xr-x 2 shi02 shi02 4096 May 23 16:27 visible2.txt + drwxr-xr-x 3 root root 4096 May 21 16:43 学习资料 + ``` + + + +3. **创建工作区**:创建一个新的目录`work_area`,并在其中创建三个子目录:`project_a`、`project_b`和`docs`。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ mkdir work_area + shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ cd work_area/ + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ mkdir project_a project_b docs + ``` + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ tree + . + ├── docs + ├── project_a + └── project_b + + 4 directories, 0 files + ``` + + + +4. **移动文本文件**:将家目录下的所有`.txt`文件移动到`work_area/docs`目录中,并确保这些文件在移动后仍然是隐藏的(如果它们是隐藏的)。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ mv *.txt .*.txt /home/shi02/work_area/docs/ + ``` + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ cd work_area/docs/ + + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area/docs$ tree -a + . + ├── .hidden.txt + ├── visible1.txt + └── visible2.txt + + 4 directories, 0 files + ``` + + + +5. **创建新文件**:在`work_area/project_a`目录下创建一个新的文本文件`notes.txt`,并添加一些内容(例如:`echo "Initial notes for project A" > work_area/project_a/notes.txt`)。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area/project_a$ touch notes.txt + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area/project_a$ vim notes.txt + ``` + + + +6. **复制目录**:递归地复制`work_area/project_a`目录到`work_area/project_b`,并命名为`project_a_backup`。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ cp -r project_a/ project_b/ + + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area/project_b$ mv project_a project_a_backup + ``` + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area/project_b$ tree + . + └── project_a_backup + └── notes.txt + ``` + + + +7. **列出文件并按大小排序**:列出`work_area/docs`目录下的所有文件,并按文件大小降序排列。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area/docs$ ls -laS + total 20 + drwxr-xr-x 5 shi02 shi02 4096 May 23 16:42 . + drwxr-xr-x 5 shi02 shi02 4096 May 23 16:42 .. + drwxr-xr-x 2 shi02 shi02 4096 May 23 16:27 .hidden.txt + drwxr-xr-x 2 shi02 shi02 4096 May 23 16:27 visible1.txt + drwxr-xr-x 2 shi02 shi02 4096 May 23 16:27 visible2.txt + ``` + + + +8. **删除所有文件**:删除`work_area/docs`目录下所有文件。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ rm -r docs/ + ``` + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ ls + project_a project_b + ``` + + + +9. **删除目录**:假设您不再需要`work_area/project_b`目录及其所有内容,请递归地强制删除它。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ rm -r project_b + + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ ls + project_a + ``` + + + +10. **清理空目录**:清理`work_area`目录,删除其中所有的空目录(注意:不要删除非空的目录)。 + + ``` + shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ rm -d * + rm: cannot remove 'project_a': Directory not empty + ``` + + + +11. **创建别名**:回到您的家目录,并创建一个别名`llh`,该别名能够列出当前目录下文件和目录的长格式列表,并以人类可读的格式显示文件大小(类似于`ls -lh`命令)。 + +``` +shi02@iZbp13tv4lhu3zmjtsczkoZ:~/work_area$ cd +shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ ls -a +shi02@iZbp13tv4lhu3zmjtsczkoZ:~$ vim .bashrc +创建 alias llh='ls -lh' 并保存文件 +之后退出帐号一次,再登录,即可使用llh来代替ls -lh +``` + -- Gitee