diff --git "a/27 \345\210\230\350\216\271\350\216\271/0523 \347\233\256\345\275\225 .md" "b/27 \345\210\230\350\216\271\350\216\271/0523 \347\233\256\345\275\225 .md" new file mode 100644 index 0000000000000000000000000000000000000000..7e75ecb49608e6851667b90992cb958f63c70543 --- /dev/null +++ "b/27 \345\210\230\350\216\271\350\216\271/0523 \347\233\256\345\275\225 .md" @@ -0,0 +1,87 @@ +假设您刚刚登录到一个Linux系统,并位于您的家目录(`~`)下。您需要完成以下一系列复杂的操作来组织和清理您的文件和目录。请按照顺序执行,并给出相应的命令。 + +1. **创建测试文件**:在家目录下创建三个文本文件,分别命名为`.hidden.txt`(隐藏文件)、`visible1.txt`和`visible2.txt`。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~# cd /home + + root@iZf8ziv3jfzkf4ruajovfuZ:/home# touch hidden.txt visible1.txt visible2.txt + + + ``` + + + +2. **列出文件和目录**:列出家目录(`~`)下的所有文件和目录,包括隐藏文件,并查看其详细权限和属性。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:/home# ls -al + ``` + + + +3. **创建工作区**:创建一个新的目录`work_area`,并在其中创建三个子目录:`project_a`、`project_b`和`docs`。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:/home# mkdir work_area + + root@iZf8ziv3jfzkf4ruajovfuZ:/home# cd work_area + root@iZf8ziv3jfzkf4ruajovfuZ:/home/work_area# mkdir project_a project_b docs + ``` + + + +4. **移动文本文件**:将家目录下的所有`.txt`文件移动到`work_area/docs`目录中,并确保这些文件在移动后仍然是隐藏的(如果它们是隐藏的)。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~# cd /home + root@iZf8ziv3jfzkf4ruajovfuZ:/home# mv *.txt home/work_area/docs + + root@iZf8ziv3jfzkf4ruajovfuZ:/home# mv + ``` + + * .hidden.txt /home/work_area/docs + +5. **创建新文件**:在`work_area/project_a`目录下创建一个新的文本文件`notes.txt`,并添加一些内容(例如:`echo "Initial notes for project A" > work_area/project_a/notes.txt`)。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area/project_a$ touch notes.txt + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area$ cd ../../ + root@iZf8ziv3jfzkf4ruajovfuZ:~$ echo "Initial notes for project A" > work_area/project_a/notes.txt + + ``` + + + +6. **复制目录**:递归地复制`work_area/project_a`目录到`work_area/project_b`,并命名为`project_a_backup`。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area$ cp -r project_a project_b/ + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area$ cd project_broot@iZf8ziv3jfzkf4ruajovfuZ + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area/project_b$ mv project_a project_a_backup + + ``` + + + +7. **列出文件并按大小排序**:列出`work_area/docs`目录下的所有文件,并按文件大小降序排列。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area/docs$ ls -arsl + ``` + + + +8. **删除所有文件**:删除`work_area/docs`目录下所有文件。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area/docs$ rm -f .hidden.txt visible1.txt visible2.txt + + ``` + + + +9. **删除目录**:假设您不再需要`work_area/project_b`目录及其所有内容,请递归地强制删除它。 + + ``` + root@iZf8ziv3jfzkf4ruajovfuZ:~/work_area$ rm -rf project_b \ No newline at end of file