diff --git "a/\350\214\203\347\220\263\346\226\271/202404023\345\244\215\345\210\266.md" "b/\350\214\203\347\220\263\346\226\271/202404023\345\244\215\345\210\266.md" new file mode 100644 index 0000000000000000000000000000000000000000..185dbffa1c326c9d3686c549b402d550fac1f64c --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/202404023\345\244\215\345\210\266.md" @@ -0,0 +1 @@ +## cp diff --git "a/\350\214\203\347\220\263\346\226\271/20240515Linux\351\205\215\347\275\256\345\256\242\346\210\267\347\253\257\350\277\234\347\250\213\350\277\236\346\216\245.md" "b/\350\214\203\347\220\263\346\226\271/20240515Linux\351\205\215\347\275\256\345\256\242\346\210\267\347\253\257\350\277\234\347\250\213\350\277\236\346\216\245.md" index a0ef91732113fea7c15d82f199b40838225d9106..b5bdeaf33f238d941a549e5c1e0268f3f6d58403 100644 --- "a/\350\214\203\347\220\263\346\226\271/20240515Linux\351\205\215\347\275\256\345\256\242\346\210\267\347\253\257\350\277\234\347\250\213\350\277\236\346\216\245.md" +++ "b/\350\214\203\347\220\263\346\226\271/20240515Linux\351\205\215\347\275\256\345\256\242\346\210\267\347\253\257\350\277\234\347\250\213\350\277\236\346\216\245.md" @@ -1,6 +1,21 @@ ## 初识Linux ### Linux发展史 +- 依赖着五个重要支柱 + + Unix操作系统 + + MINIX操作系统 + + GNU计划 + + POSIX标准 + + Internet网络。 +1. 20世纪80年代,美国人AndrewS.Tanenbaum编写MINIX +2. 1991年,Linus Torvalds 写出 Linux0.01。 ### Linux与Windows区别 +- 开源性:Linux 可以查看修改代码,Windows是闭源 +- 应用程序:Windows拥有大量的商业软件和游戏,Linux适合开发和运行开源软件。 +- 安全性:Linux无需频繁地更新和修补漏洞,windows 需要。 +- 硬件支持:Windows在主流硬件上支持,Linux需根据不同的硬件配置进行调整和优化。 +- 命令行界面:Linux通过命令进行操作和管理,Windows是图形化的界面。 +- 操作:Linux将所有的设备、文件、进程等都当做文件来处理,具有了很高的灵活性和可扩展性, +Windows是一种单用户多任务操作系统,界面化操作,出色的多媒体功能,可以完成DOS操作系统所有命令的功能,而且更加容易和方便。 ### 安装debain 系统后,两种账号登陆 - root 超级管理员,他具有最高的权限 - 普通用户 dabian2ban 权限很低(切换为root) diff --git "a/\350\214\203\347\220\263\346\226\271/20240516Linux\347\273\223\346\236\204.md" "b/\350\214\203\347\220\263\346\226\271/20240516Linux\347\273\223\346\236\204.md" new file mode 100644 index 0000000000000000000000000000000000000000..1d1b0ff942b60b847128e8384238943bdcf1de25 --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/20240516Linux\347\273\223\346\236\204.md" @@ -0,0 +1,19 @@ +## 文件系统的最顶层是由根目录开始的,系统使用“/”来表示根目录 +- 目录名或文件名都是区分大小写的 + /bin/ 存放系统命令,普通用户和 root 都可以执行。 + /boot/ 系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件等 + /dev/ 设备文件保存位置 + /etc/ 配置文件保存位置。系统内所有采用默认安装方式的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等 + /home/ 普通用户的主目录(也称为家目录)。在创建用户时,每个用户要有一个默认登录和保存自己数据的位置,就是用户的主目录,所有普通用户的主目录是在 /home/ 下建立一个和用户名相同的目录。 + /lib/ 系统调用的函数库保存位置 + /media/ 挂载目录。系统建议用来挂载媒体设备,如软盘和光盘 + /mnt/ 挂载目录。早期 Linux 中只有这一个挂载目录,并没有细分。系统建议这个目录用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区 + /misc/ 挂载目录。系统建议用来挂载 NFS 服务的共享目录。虽然系统准备了三个默认挂载目录 /media/、/mnt/、/misc/,但是到底在哪个目录中挂载什么设备可以由管理员自己决定。 + /opt/ 第三方安装的软件保存位置。这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。 + /root/ root 的主目录。普通用户主目录在 /home/ 下,root 主目录直接在“/”下 + /sbin/ 保存与系统环境设置相关的命令,只有 root 可以使用这些命令进行系统环境设置,但也有些命令可以允许普通用户查看 + /srv/ 服务数据目录。一些系统服务启动之后,可以在这个目录中保存所需要的数据 + /tmp/ 临时目录。系统存放临时文件的目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清空 + /lost+found/ 当系统意外崩溃或意外关机时,产生的一些文件碎片会存放在这里。在系统启动的过程中,fsck 工具会检查这里,并修复已经损坏的文件系统。这个目录只在每个分区中出现,例如,/lost+found 就是根分区的备份恢复目录,/boot/lost+found 就是 /boot 分区的备份恢复目录 + /proc/ 虚拟文件系统。目录中的数据并不保存在硬盘上,保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。如 /proc/cpuinfo 是保存 CPU 信息的,/proc/devices 是保存设备驱动的列表的,/proc/net 是保存网络协议信息的 + /sys/ 虚拟文件系统。目录中的数据都保存在内存中,主要保存与内核相关的信息 diff --git "a/\350\214\203\347\220\263\346\226\271/20240525.md" "b/\350\214\203\347\220\263\346\226\271/20240525.md" new file mode 100644 index 0000000000000000000000000000000000000000..9ec9c9bb3d01b09755d3a264f4f1ac8dd77184cb --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/20240525.md" @@ -0,0 +1 @@ +## 20240526 \ No newline at end of file diff --git a/README.en.md "b/\350\214\203\347\220\263\346\226\271/README.en.md" similarity index 100% rename from README.en.md rename to "\350\214\203\347\220\263\346\226\271/README.en.md" diff --git "a/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240518\344\275\234\344\270\232.md" "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240518\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..c778c854a9d3a0af4a9a20ca69adb7d0b007fbc3 --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240518\344\275\234\344\270\232.md" @@ -0,0 +1,63 @@ +## 新建一个用户dabian2ban,密码设置666 + root@hecs-338035:~# sudo useradd debain2ban + root@hecs-338035:~# chsh -s/bin/bash debain2ban + root@hecs-338035:~# sudo passwd debain2ban 666 +## 切换到新用户 + root@hecs-338035:~# su - debain2ban + su: warning: cannot change directory to /home/debain2ban: No such file or directory + debain2ban@hecs-338035:/root$ +## 使用命令,在自己的家目录,以以下层次依次建立文件夹 + 1. 国家 + 1. 省份 + 1. 市 + 1. 县(区) + 1. 镇(街道) + 1. 村(小区) + 1. 姓名 + 2. mkdir -p //-p的选项当相关目录不存在时,就创建,若已经存在就跳过创建而不报错 +4. 在姓名文件夹,建立一个自己的学号姓名文件 + debain2ban@hecs-338035:~/国家/省份/市/县/镇/村/姓名$ rm .小明.txt.swp + debain2ban@hecs-338035:~/国家/省份/市/县/镇/村/姓名$ vim 小明.txt +5. 将国家这个文件夹打包 + debain2ban@hecs-338035:~$ tar -cvf china.tar 国家 + 国家/ + 国家/省份/ + 国家/省份/市/ + 国家/省份/市/县/ + 国家/省份/市/县/镇/ + 国家/省份/市/县/镇/村/ + 国家/省份/市/县/镇/村/姓名/ + 国家/省份/市/县/镇/村/姓名/小明.txt +6. 解包 + debain2ban@hecs-338035:~$ tar -xvf china.tar + 国家/ + 国家/省份/ + 国家/省份/市/ + 国家/省份/市/县/ + 国家/省份/市/县/镇/ + 国家/省份/市/县/镇/村/ + 国家/省份/市/县/镇/村/姓名/ + 国家/省份/市/县/镇/村/姓名/小明.txt +7. 压缩 + debain2ban@hecs-338035:~$ gzip 国家 -r + debain2ban@hecs-338035:~/国家/省份/市/县/镇/村/姓名$ ls + 小明.txt.gz +8. 解压 + debain2ban@hecs-338035:~$ gzip -d 国家 -r + debain2ban@hecs-338035:~/国家/省份/市/县/镇/村/姓名$ ls + 小明.txt +9. 压缩包下载到本地电脑 +- 压缩包 + debain2ban@hecs-338035:~$ tar -czvf chian.tar.gz 国家 + 国家/ + 国家/省份/ + 国家/省份/市/ + 国家/省份/市/县/ + 国家/省份/市/县/镇/ + 国家/省份/市/县/镇/村/ + 国家/省份/市/县/镇/村/姓名/ + 国家/省份/市/县/镇/村/姓名/小明.txt +- 下载 + + + diff --git "a/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240520\344\275\234\344\270\232.md" "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240520\344\275\234\344\270\232.md" new file mode 100644 index 0000000000000000000000000000000000000000..4d14213a730dcdfc80c9906b187ab4bd095c82b5 --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240520\344\275\234\344\270\232.md" @@ -0,0 +1,80 @@ +### 综合练习题:大学生生活场景中的文件夹和文件管理 + +假设你是一名大学生,现在面临着整理学习资料和课程作业的任务。请按照以下要求完成相关的文件夹和文件管理操作: + +1. 在你的个人文档目录下创建一个名为`学习资料`的文件夹,并进入该文件夹。 +### 个人目录就是/home + +2. 在`学习资料`文件夹中创建一个名为`计算机科学`的文件夹。 + root@hecs-338035:/home# mkdir -p 学习资料/计算机科学 + root@hecs-338035:/home# ls + 学习资料 + +3. 在`计算机科学`文件夹中创建两个子文件夹,分别命名为`课程资料`和`编程项目`。 + root@hecs-338035:/home/学习资料/计算机科学# mkdir 课程资料 && mkdir 编程项目 + root@hecs-338035:/home/学习资料/计算机科学# ls + 编程项目 课程资料 +4. 将你最近的一门计算机科学课程的课件文件(假设文件名为`CS101_第一讲.pdf`)放入`课程资料`文件夹。 + root@hecs-338035:/home/学习资料/计算机科学# cd 课程资料 + root@hecs-338035:/home/学习资料/计算机科学/课程资料# touch CS101_第一讲.pdf + root@hecs-338035:/home/学习资料/计算机科学/课程资料# ls + CS101_第一讲.pdf +5. 在`编程项目`文件夹中创建一个名为`Java项目`的文件夹。 + root@hecs-338035:/home/学习资料/计算机科学/编程项目# mkdir Java + root@hecs-338035:/home/学习资料/计算机科学/编程项目# ls + Java + +6. 在`Java项目`文件夹中创建两个空文件,分别命名为`主程序.java`和`工具类.java`。 + root@hecs-338035:/home/学习资料/计算机科学/编程项目/Java# touch 主程序.java && touch 工具类.java + root@hecs-338035:/home/学习资料/计算机科学/编程项目/Java# ls + 主程序.java 工具类.java + +7. 复制`主程序.java`并命名为`备份_主程序.java`。 + root@hecs-338035:/home/学习资料/计算机科学/编程项目/Java# cp 主程序.java 备份_主程序.java + root@hecs-338035:/home/学习资料/计算机科学/编程项目/Java# ls + 主程序.java 备份_主程序.java 工具类.java + +8. 创建一个名为`Python项目`的文件夹,并将`工具类.java`移动到`Python项目`文件夹中。 + root@hecs-338035:/home/学习资料/计算机科学# mkdir Python项目 + root@hecs-338035:/home/学习资料/计算机科学# ls + Python项目 编程项目 课程资料 + + root@hecs-338035:/home/学习资料/计算机科学/编程项目/Java# mv 工具类.java 编程项目 + + root@hecs-338035:/home/学习资料/计算机科学/编程项目/Java# mv 工具类.java ../../Python项目/ + + root@hecs-338035:/home/学习资料/计算机科学/Python项目# ls + 工具类.java + +9. 列出`计算机科学`文件夹中所有文件和文件夹的内容。 + root@hecs-338035:/home/学习资料/计算机科学# ls -R +.: +Python项目 编程项目 课程资料 + +./Python项目: +工具类.java + +./编程项目: +Java + +./编程项目/Java: +主程序.java 备份_主程序.java + +./课程资料: +CS101_第一讲.pdf + +10. 删除`编程项目`文件夹及其包含的所有内容。 + root@hecs-338035:/home/学习资料/计算机科学# rm -rf 编程项目/ + + root@hecs-338035:/home/学习资料/计算机科学# ls + Python项目 课程资料 + +11. 重命名`Python项目`为`数据分析项目`。 + root@hecs-338035:/home/学习资料/计算机科学# mv Python项目 数据分析项目 + + root@hecs-338035:/home/学习资料/计算机科学# ls + 数据分析项目 课程资料 +12. 最后,列出当前所在目录的路径。 + root@hecs-338035:/home/学习资料/计算机科学# pwd + /home/学习资料/计算机科学 + root@hecs-338035:/home/学习资料/计算机科学# \ No newline at end of file diff --git "a/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240523\344\275\234\344\270\2321.md" "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240523\344\275\234\344\270\2321.md" new file mode 100644 index 0000000000000000000000000000000000000000..c4ba64cfa4da76ed1d5b3a45f51ccf4de8698a4a --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240523\344\275\234\344\270\2321.md" @@ -0,0 +1,177 @@ +### 练习题 1:复制文件 + +假设你有两个目录:`/home/user/docs` 和 `/home/user/backup`。 + +1. 将`/home/user/docs`目录下的`file1.txt`复制到`/home/user/backup`目录下。 +2. 复制`/home/user/docs`目录下的所有`.txt`文件到`/home/user/backup`目录下。 + +debain2ban@hecs-338035:~$ mkdir docs && mkdir backup +debain2ban@hecs-338035:~$ ls +backup docs + +debain2ban@hecs-338035:~/docs$ touch a.txt && touch .b.txt && touch fifel.txt +debain2ban@hecs-338035:~/docs$ ls -a +. .. a.txt .b.txt fifel.txt +debain2ban@hecs-338035:~/docs$ + +debain2ban@hecs-338035:~/docs$ mv *.txt ../backup +debain2ban@hecs-338035:~/docs$ mv .*.txt ../backup +debain2ban@hecs-338035:~/docs$ cd .. +debain2ban@hecs-338035:~$ cd backup +debain2ban@hecs-338035:~/backup$ ls -a +. .. a.txt .b.txt fifel.txt + + +### 练习题 2:复制文件夹及其内容 + +1. 假设`/home/user/photos`是一个包含多个图片文件夹的目录,请复制整个`/home/user/photos`目录及其所有内容到`/home/user/archive`目录下。 + +debain2ban@hecs-338035:~$ mkdir photos && mkdir archive +debain2ban@hecs-338035:~$ ls +archive backup docs photos + +debain2ban@hecs-338035:~/photos$ touch 001.png +debain2ban@hecs-338035:~/photos$ ls +001.png + +debain2ban@hecs-338035:~$ cp photos archive +cp: -r not specified; omitting directory 'photos' +debain2ban@hecs-338035:~$ cp -r photos archive +debain2ban@hecs-338035:~$ cd archive +debain2ban@hecs-338035:~/archive$ ls +photos +debain2ban@hecs-338035:~/archive$ cd photos +debain2ban@hecs-338035:~/archive/photos$ ls +001.png + +### 练习题 3:移动文件 + +1. 将`/home/user/docs`目录下的`file2.docx`移动到`/home/user/papers`目录下。 +2. 如果`/home/user/papers`目录下已经有一个名为`file2.docx`的文件,请确保移动操作会询问你是否要覆盖它。 + +debain2ban@hecs-338035:~/docs$ touch fifel2.docs +debain2ban@hecs-338035:~/docs$ ls +fifel2.docs + +debain2ban@hecs-338035:~$ mkdir papers +debain2ban@hecs-338035:~$ ls +archive backup docs papers photos + +debain2ban@hecs-338035:~$ cp docs/fifel2.docs papers +debain2ban@hecs-338035:~$ cd papers +debain2ban@hecs-338035:~/papers$ ls +fifel2.docs + +debain2ban@hecs-338035:~$ cp -i docs/fifel2.docs papers +cp: overwrite 'papers/fifel2.docs'? y +debain2ban@hecs-338035:~$ cd papers +debain2ban@hecs-338035:~/papers$ ls +fifel2.docs + + +### 练习题 4:重命名文件 + +1. 将`/home/user/docs`目录下的`oldname.pdf`重命名为`newname.pdf`。 + +debain2ban@hecs-338035:~/docs$ touch oldname.pdf +debain2ban@hecs-338035:~/docs$ ls +fifel2.docs oldname.pdf + +debain2ban@hecs-338035:~/docs$ mv oldname.pdf newname.pdf +debain2ban@hecs-338035:~/docs$ ls +fifel2.docs newname.pdf + +### 练习题 5:结合使用 + +1. 复制`/home/user/docs`目录下的`report.md`到`/home/user/temp`,然后将复制过去的文件重命名为`temp_report.md`。 +2. 将`/home/user/docs`目录下所有以`.doc`结尾的文件移动到`/home/user/processed`,并且如果这些文件在目标目录中已经存在,则不覆盖它们。 + +debain2ban@hecs-338035:~/docs$ touch report.md +debain2ban@hecs-338035:~/docs$ ls +fifel2.docs newname.pdf report.md + +debain2ban@hecs-338035:~$ mkdir temp +debain2ban@hecs-338035:~$ ls +archive backup docs papers photos temp + +debain2ban@hecs-338035:~$ mv docs/report.md temp/temp_report.md +debain2ban@hecs-338035:~$ cd temp +debain2ban@hecs-338035:~/temp$ ls +temp_report.md + +debain2ban@hecs-338035:~$ mkdir processed +debain2ban@hecs-338035:~$ ls +archive backup docs papers photos processed temp + +debain2ban@hecs-338035:~/docs$ echo "abc" >a.doc && echo "ppt" >b.doc +debain2ban@hecs-338035:~/docs$ ls +a.doc b.doc fifel2.docs newname.pdf + +debain2ban@hecs-338035:~/docs$ cat a.doc && cat b.doc +abc +ppt + +debain2ban@hecs-338035:~/processed$ echo "666" >b.doc +debain2ban@hecs-338035:~/processed$ ls +b.doc +debain2ban@hecs-338035:~/processed$ cat b.doc +666 + +// 覆盖了 +debain2ban@hecs-338035:~$ cp docs/*.doc processed/ +debain2ban@hecs-338035:~$ cd processed/ +debain2ban@hecs-338035:~/processed$ ls +a.doc b.doc +debain2ban@hecs-338035:~/processed$ cat b.doc +ppt + +debain2ban@hecs-338035:~$ cp -n docs/*.doc processed/ +debain2ban@hecs-338035:~$ cd processed/ +debain2ban@hecs-338035:~/processed$ ls +a.doc b.doc +debain2ban@hecs-338035:~/processed$ cat b.doc +666 + + +### 练习题 6:使用通配符 + +1. 复制`/home/user/docs`目录下所有以`.jpg`或`.png`结尾的图片文件到`/home/user/images`目录。 + +debain2ban@hecs-338035:~/docs$ touch a.jpg b.jpg a.png b.png +debain2ban@hecs-338035:~/docs$ ls +a.doc a.jpg a.png b.doc b.jpg b.png fifel2.docs newname.pdf +debain2ban@hecs-338035:~/docs$ cd .. +debain2ban@hecs-338035:~$ mkdir images +debain2ban@hecs-338035:~$ ls +archive backup docs images papers photos processed temp + +debain2ban@hecs-338035:~/docs$ cp *.jpg *.png ../images +debain2ban@hecs-338035:~$ cd images/ +debain2ban@hecs-338035:~/images$ ls +a.jpg a.png b.jpg b.png + + +### 练习题 7:详细输出 + +1. 使用`cp`命令复制文件时,显示详细的复制信息。 +2. 使用`mv`命令移动文件时,显示详细的移动信息。 + +debain2ban@hecs-338035:~/docs$ cp -v *.jpg *png ../images/ +'a.jpg' -> '../images/a.jpg' +'b.jpg' -> '../images/b.jpg' +'a.png' -> '../images/a.png' +'b.png' -> '../images/b.png' +debain2ban@hecs-338035:~/docs$ cd ../images/ +debain2ban@hecs-338035:~/images$ ls -v +a.jpg a.png b.jpg b.png + +debain2ban@hecs-338035:~/images$ rm -v *.jpg *png +removed 'a.jpg' +removed 'b.jpg' +removed 'a.png' +removed 'b.png' +debain2ban@hecs-338035:~/images$ ls + +### 练习题 8:更新文件 + +1. 如果`/home/user/backup`目录中已经有一个与`/home/user/docs`目录下的`file1.txt`同名的文件,并且`/home/user/docs/file1.txt`的内容是更新的,请使用`cp`命令将更新的文件复制到备份目录,并覆盖旧文件(假设你知道旧文件可以被安全地覆盖)。 \ No newline at end of file diff --git "a/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240523\344\275\234\344\270\2322.md" "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240523\344\275\234\344\270\2322.md" new file mode 100644 index 0000000000000000000000000000000000000000..a860f746dde2102d0bbb7b0429157a12804739cf --- /dev/null +++ "b/\350\214\203\347\220\263\346\226\271/\344\275\234\344\270\232/20240523\344\275\234\344\270\2322.md" @@ -0,0 +1,146 @@ +## 相关和目录可自行创建后再操作 + +1. 在家目录下建立文件exam.c,将文件exam.c拷贝到/tmp这个目录下,并改名为 shiyan.c + + debain2ban@hecs-338035:~$ touch exam.c + debain2ban@hecs-338035:~$ mkdir tmp + debain2ban@hecs-338035:~$ cp exam.c tmp/shiyan.c + debain2ban@hecs-338035:~$ ls + exam.c tmp + debain2ban@hecs-338035:~$ cd tmp + debain2ban@hecs-338035:~/tmp$ ls + shiyan.c + debain2ban@hecs-338035:~/tmp$ + +2. 在任何目录下回到用户主目录? + cd - 或者 cd 或者 cd ~。 +3. 用长格式列出/tmp/test目录下所有的文件包括隐藏文件? + ls -la tmp/test +## 4. /tmp/test2目录下,创建5个文件分别是 1.txt 2.txt 3.txt 4.txt 5.txt,压缩这5个文件,压缩包的名字是hailiang.tar + debain2ban@hecs-338035:~/tmp/test2$ touch 1.txt 2.txt 3.txt 4.txt 5.txt + debain2ban@hecs-338035:~/tmp/test2$ ls + 1.txt 2.txt 3.txt 4.txt 5.txt + debain2ban@hecs-338035:~/tmp/test2$ tar -cvf hailiang.tar 1.txt 2.txt 3.txt 4.txt 5.txt + 1.txt + 2.txt + 3.txt + 4.txt + 5.txt + debain2ban@hecs-338035:~/tmp/test2$ ls + 1.txt 2.txt 3.txt 4.txt 5.txt hailiang.tar + +5. 当前目录,建立文件 file1.txt 并更名为 file2.txt? + debain2ban@hecs-338035:~/tmp/test2$ mkdir file1.txt && mv file1.txt file2.txt + debain2ban@hecs-338035:~/tmp/test2$ ls + 1.txt 2.txt 3.txt 4.txt 5.txt file2.txt hailiang.tar + +6. 当前目录,用vim建立文件bbbb.txt 并将用户名的加入其中保存退出? + debain2ban@hecs-338035:~/tmp/test2$ vim bbbb.txt + debain2ban@hecs-338035:~/tmp/test2$ cat bbbb.txt + 123 + +7. 将家目录中扩展名为txt、doc和bak的文件全部复制到/tmp/test目录中? + debain2ban@hecs-338035:~/tmp$ mkdir test + debain2ban@hecs-338035:~$ cp *.txt *.doc *.bak tmp/test + debain2ban@hecs-338035:~$ cd tmp/test + debain2ban@hecs-338035:~/tmp/test$ ls + 1.bak 1.doc 1.txt 2.bak 2.doc 2.txt + +8. 将文件file1.txt从当前目录移动到家目录的/docs中。 + debain2ban@hecs-338035:~/tmp$ tree + . + ├── shiyan.c + ├── test + │   ├── 1.bak + │   ├── 1.doc + │   ├── 1.txt + │   ├── 2.bak + │   ├── 2.doc + │   └── 2.txt + └── test2 + ├── 1.txt + ├── 2.txt + ├── 3.txt + ├── 4.txt + ├── 5.txt + ├── bbbb.txt + ├── file2.txt + └── hailiang.tar + + 3 directories, 14 files + + debain2ban@hecs-338035:~/tmp/test2$ touch file1.txt + debain2ban@hecs-338035:~$ mkdir docs + debain2ban@hecs-338035:~$ ls + 1.bak 1.doc 1.txt 2.bak 2.doc 2.txt docs exam.c tmp + debain2ban@hecs-338035:~/tmp/test2$ mv file1.txt ../../docs + debain2ban@hecs-338035:~$ cd docs + debain2ban@hecs-338035:~/docs$ ls + file1.txt + +9. 复制文件file2.txt从当前目录到家目录/backup中。 + debain2ban@hecs-338035:~$ mkdir backup + debain2ban@hecs-338035:~/tmp/test2$ mv file2.txt ../../backup + debain2ban@hecs-338035:~$ cd backup + debain2ban@hecs-338035:~/backup$ ls + file2.txt + +#### 10. 将家目录/docs中的所有文件和子目录移动到家目录/archive中。 + +#### 11. 复制家目录/photos及其所有内容到家目录/backup中。 + +12. 将文件家目录/docs/report.doc移动到家目录/papers中,并将其重命名为final_report.doc。 +13. 在家目录/docs中创建一个名为notes.txt的空文件,并将其复制到目录家目录/backup中。 + debain2ban@hecs-338035:~/docs$ touch notes.txt && cp notes.txt ../backup + debain2ban@hecs-338035:~/docs$ cd ../backup + debain2ban@hecs-338035:~/backup$ ls + file2.txt notes.txt + +14. 复制家目录/images中所有以.jpg结尾的文件到家目录/photos中。 +15. 将文件家目录/docs/file1.txt和家目录/docs/file2.txt复制到家目录/backup中。 +debain2ban@hecs-338035:~/docs$ cp file1.txt file2.txt ../backup +cp: cannot overwrite directory '../backup/file2.txt' with non-directory +// backup文件下已经存在 file2.txt +debain2ban@hecs-338035:~/docs$ cd ../backup +debain2ban@hecs-338035:~/backup$ ls +file1.txt file2.txt notes.txt +// 删除之后复制或者-f 强制复制。 +16. 将家目录/docs中的所有.txt文件复制到家目录/text_files中。 +debain2ban@hecs-338035:~$ mkdir text_files +debain2ban@hecs-338035:~$ cd docs +debain2ban@hecs-338035:~/docs$ ls +file1.txt file2.txt notes.txt +debain2ban@hecs-338035:~/docs$ mv *.txt ../text_files +debain2ban@hecs-338035:~/docs$ cd ../text_files/ +debain2ban@hecs-338035:~/text_files$ ls +file1.txt file2.txt notes.txt + + +17. 将家目录/docs中的所有文件移动到家目录/temp中,并且如果文件已存在,则覆盖它们。 +// * + debain2ban@hecs-338035:~/docs$ touch 1.txt 2.png && mkdir ppt + debain2ban@hecs-338035:~/docs$ ls + 1.txt 2.png ppt + debain2ban@hecs-338035:~/docs$ mv * ../temp + debain2ban@hecs-338035:~/docs$ cd + debain2ban@hecs-338035:~$ cd temp + debain2ban@hecs-338035:~/temp$ ls + 1.txt 2.png ppt + +18. 将家目录/docs中的所有文件移动到家目录/archive中,并且在移动时显示详细的移动信息。 + debain2ban@hecs-338035:~/docs$ mv -v * ../archive + renamed '1.txt' -> '../archive/1.txt' + renamed '2.png' -> '../archive/2.png' + renamed 'ppt' -> '../archive/ppt' + debain2ban@hecs-338035:~/docs$ cd ../archive/ + debain2ban@hecs-338035:~/archive$ ls + 1.txt 2.png ppt + +19. 复制家目录/docs中的所有子目录及其内容到家目录/backup中。 +20. 将家目录/docs中的所有文件和子目录移动到家目录/backup中,但排除文件名以"temp_"开头的文件。 +debain2ban@hecs-338035:~/docs$ touch temp_ +debain2ban@hecs-338035:~/docs$ ls +1.txt 2.png ppt temp_ + +21. 将目录/docs/report.txt移动到家目录/archive中,但如果目标目录中已存在同名文件,则不直接覆盖,先备份同名文件为report.txt_bak。 +22. 将家目录/docs中所有以.pdf结尾的文件复制到家目录/pdf_files中,并且如果目标目录中已存在同名文件,则忽略它们。 \ No newline at end of file