练习
在工作目录下创建目录shared和shared1
mkdir shared shared1
在shared1目录中创建9个子目录a1-a9
cd shared1/
mkdir a{1..9}
在a5中创建3个文件file1-file3
cd a5/
touch file{1..3}
在shared目录中创建两个目录old和new
cd~/shared/
mkdir old new
将shared目录更名为back
cd~
mv shared back
拷贝/usr/include/stdio.h 到old内
cp /usr/include/stdio.h back/old/
移动shared1目录到back目录内 删除a1-a4 a6-a9
mv shared1/ back/
rm -r back/shared1/a[^5]
将a5目录改名为front 并移动到new目录内
mv back/shared1/a5 back/new/front
文件管理
查找文件
find
查找格式: find 路径 选项 选项值
示例: find /usr -name stdlib.h
find是搜索每个文件夹,速度慢
查找任意文件
with
查找可执行文件,一般用来查找命令
(相比较而言,查找速度快。因为which 只在指定的路径下查找,查找的是可执行文件)
which并不是在路径里搜索文件,它是去环境变量里找。
环境变量:就是一些可执行文件的路径,系统是通过环境变量找到可执行文件。
如果系统环境变量中没有配置ls和which的路径,那么在执行ls和vi命令的时候将会失败。
示例:which ls
locate
sudo updatedb
locate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。
locate 的速度比 find 快,它并不是真的查找,而是查数据库,一般文件数据库在 /var/lib/slocate/slocate.db 中,
所以 locate 的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库
练习
使用不同的办法,找到 unistd.h 文件、 ps 可执行文件、 passwd 文件 所在位置。
find /usr -name unistd.h
which ps
locate password
压缩文件
tar
压缩: tar cvfz dir.tar.gz dir
解压缩: tar xvfz dir.tar.gz
tar xzvf test809.tar.gz -C test 解压到指定路径下
c 创建解压文件
x 解压缩
v 显示压缩过程
f 将多个文件打包生成一个文件
z 以gzip格式压缩
练习
将 dir4 压缩为dir.tar.gz 文件 显示压缩过程
tar cvfz dir.tar.gz dir4
将 dir4 压缩为dir.tar.gz 文件 不显示压缩过程
tar cfz dir.tar.gz dir4
将 newdir.tar.gz 解压到当前文件夹(显示解压过程)
tar xvfz newdir.tar.gz
将 newdir.tar.gz 解压到桌面 (不显示解压过程)
tar xfz newdir.tar.gz -C Desktop
将工作目录下的 Desktop 目录压缩。 然后将压缩文件移动到新建的newdir 下。 然后在此目录下,解压文件。
tar cvfz files.tar.gz Desktop
mkdir newdir
mv files.tar.gz newdir
tar xvfz files.tar.gz
链接文件
ln
建立硬链接; ln an.c an.bak 根据物理编号inode节点,建立链接
an.c an.bak 具有相同的inode节点
创建文件的时候,文件名就是一个硬链接
touch a.c
//a.c会成为这个文件的第一个硬链接
//文件的本质是数据,我们需要通过链接访问这些数据
ln a.c an.bak
ln a.c ann.bak
练习
1.创建了一个a.c的文件 添加点东西
2.为a.c 建立2个英链接文件 an.bak ann.bak
touch a.c
ln a.c an.bak
ln a.c ann.bak
创建后 此时文件有3个节点
此时查看 an.bak ann.bak 文件 和 a.c文件相同
3.修改a.c的文件 查看硬链接文件 发现也修改了
cat an.bak
cat ann.bak
4.修改an.bak文件 发现a.c 和ann.bak 也进行了修改
cat a.c
cat ann.bak
5.删除an.bak 查看文件是否有影响
(没有影响)
6.删除a.c 查看ann.bak是否有影响
(没有影响)
删除所有的文件已经硬连接文件,文件消失
建立软链接: ln -s an.c an.lnk 根据路径 建立连接
软连接:
1. 创建一个文件 为文件创建一个软连接
ln -s b.c bn.lnk
2. 修改b.c
3. 如果删除b.c 软连接失效
硬链接文件,相当于一个实时备份文件。 同时,文件的链接数+1 。 如果想删除文件,需要删除所有的索引域。
索引域为0时,数据域才真正的被删除。如果文件多于1个索引。 而只删除了其中一个索引。文件的数据域并不会丢失。
软链接文件:相当于一个快捷方式。 它并不会增加文件的链接数。 是一个独立的快捷方式。 如果源文件被删除掉,这个文件就真的被删除掉了。 此时软链接文件失效。 只要在原来的路径下,创建相同名字的文件,则软链接文件重新生效 。
管道符
|
作用: 前一个命令的输出,作为第二个命令的输入。
grep 在文本中查找关键字
cat test.c|grep for 查看test.c的内容,将查找到的内容作为grep的输入。
管道符的作用,将cat test.c的输出作为输入传给grep命令,grep命令会在输入中查找for关键字
cat test.c | grep include
练习
查找根目录下是否存在 etc 这个文件。
ls / | grep etc
查找 /etc 下是否存在 passwd 这个文件。
ls /etc | grep passwd
查找 所有进程中是否存在 bash 这个进程。
ps aux | grep bash
查找 /etc/passwd 文件中,是否存在 deamon 这个用户。
cat /etc/passwd | grep deamon
重定向符号
把本应该输出的内容,放到文件里
>
>>
>重定向 会覆盖原来的内容
>> 追加重定向 会在原有内容的后面追加新内容
示例: ls / > file.txt
创建一个文件,note.txt
touch note.txt
向文件中写入hello
echo hello >> note.txt
网络管理
查看网络配置
ifconfig
eth0 :
第一块物理网卡
Ethernet :以太网
HWaddr 00:0c:29:82:8f:99 物理地址
inet addr:192.168.30.234 ipv4 地址
Bcast:192.168.30.255 广播地址
Mask:255.255.255.0 子网掩码
inet6 addr: fe80::20c:29ff:fe82:8f99/64 ipv6 地址
Local Loopback 本地环回
inet addr:127.0.0.1 本地环回地址
修改ip命令
sudo ifconfig ech0 192.168.40.199
ip地址就是我们的计算机在网络上的身份标识。
ip本质上不是地址,而是一种底层的网络协议,ip地址是基于这种网络协议的地址。
ping 测试连通性
ping 192.168.40.101
这个命令的目的是测试网络是否通畅。