From 4a4312611c241b5a65ab84359cecd77c7ce57c99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=A6=83?= <1689472338@qq.com> Date: Sun, 26 May 2024 12:57:48 +0000 Subject: [PATCH] =?UTF-8?q?30=20=E9=99=88=E5=A6=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 陈妃 <1689472338@qq.com> --- ...66\345\244\271\347\256\241\347\220\206.md" | 93 +++++++++ ...4\345\217\212\347\256\241\347\220\2062.md" | 186 ++++++++++++++++++ 2 files changed, 279 insertions(+) create mode 100644 "30 \351\231\210\345\246\203/20240523 \346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" create mode 100644 "30 \351\231\210\345\246\203/20240524 \346\226\207\346\234\254\345\217\212\347\256\241\347\220\2062.md" diff --git "a/30 \351\231\210\345\246\203/20240523 \346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" "b/30 \351\231\210\345\246\203/20240523 \346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" new file mode 100644 index 0000000..1054894 --- /dev/null +++ "b/30 \351\231\210\345\246\203/20240523 \346\226\207\344\273\266\345\244\271\347\256\241\347\220\206.md" @@ -0,0 +1,93 @@ +假设您刚刚登录到一个Linux系统,并位于您的家目录(`~`)下。您需要完成以下一系列复杂的操作来组织和清理您的文件和目录。请按照顺序执行,并给出相应的命令。 + +1. **创建测试文件**:在家目录下创建三个文本文件,分别命名为`.hidden.txt`(隐藏文件)、`visible1.txt`和`visible2.txt`。 + + ``` + touch .hidden.txt visible1.txt visible2.txt + ``` + + + +2. **列出文件和目录**:列出家目录(`~`)下的所有文件和目录,包括隐藏文件,并查看其详细权限和属性。 + + ``` + ls -a + ``` + + + +3. **创建工作区**:创建一个新的目录`work_area`,并在其中创建三个子目录:`project_a`、`project_b`和`docs`。 + + ``` + mkdir wrok_area + cd wrok_area/ + mkdir project_a project_b docs + ``` + + + +4. **移动文本文件**:将家目录下的所有`.txt`文件移动到`work_area/docs`目录中,并确保这些文件在移动后仍然是隐藏的(如果它们是隐藏的)。 + + ``` + cd ../ + mv .*.txt *.txt wrok_area/docs/ + ``` + + + +5. **创建新文件**:在`work_area/project_a`目录下创建一个新的文本文件`notes.txt`,并添加一些内容(例如:`echo "Initial notes for project A" > work_area/project_a/notes.txt`)。 + + ``` + vim notes.txt + ``` + + + +6. **复制目录**:递归地复制`work_area/project_a`目录到`work_area/project_b`,并命名为`project_a_backup`。 + + ``` + cp -r project_a/*.txt project_b/ + ``` + + + +7. **列出文件并按大小排序**:列出`work_area/docs`目录下的所有文件,并按文件大小降序排列。 + + ``` + ls -alhS + ``` + + + +8. **删除所有文件**:删除`work_area/docs`目录下所有文件。 + + ``` + rm *.txt .*.txt + ``` + + + +9. **删除目录**:假设您不再需要`work_area/project_b`目录及其所有内容,请递归地强制删除它。 + + ``` + cd ../ + rm -rfv project_b + ``` + + + +10. **清理空目录**:清理`work_area`目录,删除其中所有的空目录(注意:不要删除非空的目录)。 + + ``` + rm -d docs + ``` + + + +11. **创建别名**:回到您的家目录,并创建一个别名`llh`,该别名能够列出当前目录下文件和目录的长格式列表,并以人类可读的格式显示文件大小(类似于`ls -lh`命令)。 + + ``` + alias llh='ls -lh' + ``` + + \ No newline at end of file diff --git "a/30 \351\231\210\345\246\203/20240524 \346\226\207\346\234\254\345\217\212\347\256\241\347\220\2062.md" "b/30 \351\231\210\345\246\203/20240524 \346\226\207\346\234\254\345\217\212\347\256\241\347\220\2062.md" new file mode 100644 index 0000000..004a7e8 --- /dev/null +++ "b/30 \351\231\210\345\246\203/20240524 \346\226\207\346\234\254\345\217\212\347\256\241\347\220\2062.md" @@ -0,0 +1,186 @@ +相关和目录可自行创建后再操作 + +1. 在家目录下建立文件exam.c,将文件exam.c拷贝到/tmp这个目录下,并改名为 shiyan.c + + ``` + touch exam.c + mkdir tmp + cp -r exam.c /tmp/shiyan.c + ``` + + + +2. 在任何目录下回到用户主目录? + + ``` + cd + ``` + + + +3. 用长格式列出/tmp/test目录下所有的文件包括隐藏文件? + + ``` + ls -al + ``` + + + +4. /tmp/test2目录下,创建5个文件分别是 1.txt 2.txt 3.txt 4.txt 5.txt,压缩这5个文件,压缩包的名字是hailiang.tar + + ``` + cd test2/ + touch 1.txt 2.txt 3.txt 4.txt 5.txt + tar -czvf hailiang.tar 1.txt 2.txt 3.txt 4.txt 5.txt + ``` + + + +5. 当前目录,建立文件 file1.txt 并更名为 file2.txt? + + ``` + touch file1.txt + mv file1.txt file2.txt + ``` + + + +6. 当前目录,用vim建立文件bbbb.txt 并将用户名的加入其中保存退出? + + ``` + vim bbbb.txt + cat bbbb.txt + 大家好,我是练习时长两年半的个人练习生nihao,喜欢唱、跳、rpa、篮球,musician起! + ``` + + + +7. 将家目录中扩展名为txt、doc和bak的文件全部复制到/tmp/test目录中? + + ``` + cp -r *.txt *.doc *.bak /tmp/test + ``` + + + +8. 将文件file1.txt从当前目录移动到家目录的/docs中。 + + ``` + mv file1.txt /home/oo/docs/ + ``` + + + +9. 复制文件file2.txt从当前目录到家目录/backup中。 + + ``` + cp -r file2.txt /home/oo/backup/ + ``` + + + +10. 将家目录/docs中的所有文件和子目录移动到家目录/archive中。 + + ``` + mv docs/* archive/ + ``` + + + +11. 复制家目录/photos及其所有内容到家目录/backup中。 + + ``` + mv photos/* backup/ + ``` + + + +12. 将文件家目录/docs/report.doc移动到家目录/papers中,并将其重命名为final_report.doc。 + + ``` + mv report.doc ../papers/final_report.doc + ``` + + + +13. 在家目录/docs中创建一个名为notes.txt的空文件,并将其复制到目录家目录/backup中。 + + ``` + touch notes.txt + cp -r notes.txt ../backup/ + ``` + + + +14. 复制家目录/images中所有以.jpg结尾的文件到家目录/photos中。 + + ``` + cp -r images/*.jpg photos/ + ``` + + + +15. 将文件家目录/docs/file1.txt和家目录/docs/file2.txt复制到家目录/backup中。 + + ``` + cp -r file1.txt file2.txt ../backup/ + ``` + + + +16. 将家目录/docs中的所有.txt文件复制到家目录/text_files中。 + + ``` + cp -r *.txt ../text_files/ + ``` + + + +17. 将家目录/docs中的所有文件移动到家目录/temp中,并且如果文件已存在,则覆盖它们。 + + ``` + mv docs/* temp/ + ``` + + + +18. 将家目录/docs中的所有文件移动到家目录/archive中,并且在移动时显示详细的移动信息。 + + ``` + mv -v docs/* archive/ + ``` + + + +19. 复制家目录/docs中的所有子目录及其内容到家目录/backup中。 + + ``` + cp -r docs/* backup/ + ``` + + + +20. 将家目录/docs中的所有文件和子目录移动到家目录/backup中,但排除文件名以"temp_"开头的文件。 + + ``` + mv !(temp_*) /home/oo/backup/ + ``` + + + +21. 将目录/docs/report.txt移动到家目录/archive中,但如果目标目录中已存在同名文件,则不直接覆盖,先备份同名文件为report.txt_bak。 + + ``` + mv -bS _bak report.txt ../archive/ + ``` + + + +22. 将家目录/docs中所有以.pdf结尾的文件复制到家目录/pdf_files中,并且如果目标目录中已存在同名文件,则忽略它们。 + + ``` + cp -r docs/*.pdf pdf_files/ + ``` + + + -- Gitee