diff --git "a/\350\256\270\346\201\251\346\260\221/20240528Linux\346\237\245\350\257\242\345\221\275\344\273\244\347\233\270\345\205\263\347\232\204\347\273\203\344\271\240.md" "b/\350\256\270\346\201\251\346\260\221/20240528Linux\346\237\245\350\257\242\345\221\275\344\273\244\347\233\270\345\205\263\347\232\204\347\273\203\344\271\240.md" new file mode 100644 index 0000000000000000000000000000000000000000..b30b27e386929dcae31c8e13127abb1c446603be --- /dev/null +++ "b/\350\256\270\346\201\251\346\260\221/20240528Linux\346\237\245\350\257\242\345\221\275\344\273\244\347\233\270\345\205\263\347\232\204\347\273\203\344\271\240.md" @@ -0,0 +1,84 @@ +### 操作题 + +1. **查找当前目录及其子目录中所有扩展名为 `.log` 的文件**: + ```bash + Time@hecs-148338:~$ find -type f -name "*.log" + ``` + +2. **在 `/var/logs` 目录及其子目录中查找所有包含关键字 `error` 的文件,并显示匹配的行**: + ```bash + find /var/log/* -type f -exec grep -H "error" {} \; + ``` + +3. **在 `/home/user/docs` 目录中查找文件名包含 `report` 的所有文件**: + + ``` + find /home/Time/docs -type f -name "report" + ``` + + + +4. **查找 `/etc` 目录中最近7天内修改过的文件**: + ```bash + find /etc -type f -mtime -7 + ``` + +5. **显示 `/usr/bin` 目录中名为 `python` 的可执行文件的路径**: + + ```bash + which /usr/bin python + ``` + +6. **查找系统中名为 `ls` 的命令及其手册页位置**: + ```bash + which ls + man -w ls + ``` + +7. **查找当前目录中包含关键字 `TODO` 的所有文件,并显示匹配的行和文件名**: + ```bash + Time@hecs-148338:~$ find -type f -exec grep -r "TODO" {} \; + ``` + +8. **在 `/home/user/projects` 目录中查找所有包含关键字 `function` 的 `.js` 文件**: + + ```bash + Time@hecs-148338:~$ find projects -type f -name "*.js" -exec grep "function" {} \; + ``` + +9. **查找并显示当前目录及其子目录中所有空文件**: + ```bash + Time@hecs-148338:~$ find -type f -empty + ``` + +10. **在 `/var/www` 目录中查找包含关键字 `database` 的所有文件,并只显示文件名**: + ```bash + Time@hecs-148338:~$ find /var/www -type f -exec grep -1 "datbase" {} \; + ``` + +### 综合操作题 + +**综合操作题:** + +假设你在一个名为 `/home/user/workspace` 的目录中工作。你需要完成以下任务: + +1. 查找该目录中所有扩展名为 `.conf` 的文件。 +2. 在这些 `.conf` 文件中查找包含关键字 `server` 的行。 +3. 将包含关键字 `server` 的文件名和匹配的行保存到一个名为 `server_lines.txt` 的文件中。 + +**预期命令步骤:** + +1. 查找所有扩展名为 `.conf` 的文件: + ```bash + Time@hecs-148338:~/workspace$ find -type f -name "*.conf" + ``` + +2. 在这些 `.conf` 文件中查找包含关键字 `server` 的行: + ```bash + Time@hecs-148338:~/workspace$ find -type f -name "*.conf" -exec grep -r "server" {} \; + ``` + +3. 将结果保存到 `server_lines.txt` 文件中: + ```bash + Time@hecs-148338:~/workspace$ find -type f -name "*.conf" -exec grep -r "server" {} + >server_lines.txt + ```