快捷键
快捷键 | 作用 |
---|
Tab | 补全命令 |
Ctrl + C | 中断正在运行的程序 |
Ctrl + D | 结束键盘输入(End of File,EOF) |
Ctrl + L | 清屏,往上翻可以查看历史操作 |
目录
查看当前目录
pwd
![image-20240518113537570](https://img-blog.csdnimg.cn/img_convert/df2870f9ca5f3d5c2501b934aff716c7.png)
查看目录内容
ls //查看当前目录下的所有目录和文件
ls -a //查看当前目录下的所有目录和文件(包括隐藏的文件)
ls -l //列表查看当前目录下的所有目录和文件(列表查看,显示更多信息),与命令"ll"效果一样
ls /usr //查看指定目录下的所有目录和文件
![image-20240518111854218](https://img-blog.csdnimg.cn/img_convert/33507a2dfe917264826f19a8a23d1a64.png)
切换目录
cd ~ // 切换到home
cd / // 切换到根目录
cd /bin //切换到指定bin目录
cd - //切换到上次访问的目录
![image-20240518111632884](https://img-blog.csdnimg.cn/img_convert/198f6db5e12a7bc8e9090b840faaa854.png)
创建目录
mkdir 目录名 //创建目录
mkdir 路径 + 目录 //指定目录创建目录
![image-20240518112029276](https://img-blog.csdnimg.cn/img_convert/243aad33a87ed9d7b06f7d4bcfbfcd6c.png)
删除目录与文件
rm 文件名 //删除当前目录下的文件
rm -f 文件名 //删除当前目录的的文件(不询问)
rm -r 文件夹名 //递归删除当前目录下此名的目录
rm -rf 文件夹名 //递归删除当前目录下此名的目录(不询问)
rm -rf * //将当前目录下的所有目录和文件全部删除
rm -rf /* //将根目录下的所有文件全部删除【慎用!相当于格式化系统】
![image-20240518112455565](https://img-blog.csdnimg.cn/img_convert/b6c5b2543fb5401376e27459f6b4c8d9.png)
修改目录
mv 当前目录名 新目录名 //修改目录名,同样适用与文件操作
mv /home/fyycode/test4 /home/fyycode/test5 //将/usr/tmp目录下的tool目录剪切到 /opt目录下面
mv -r /home/fyycode/test4 /home/fyycode/test5 //递归剪切目录中所有文件和文件夹
![image-20240518112906447](https://img-blog.csdnimg.cn/img_convert/67d216ec1e2e966063cf51ed2e14861e.png)
拷贝目录
cp /home/fyycode/test /home/fyycode/test5 //将/usr/tmp目录下的tool目录复制到 /opt目录下面
cp -r /home/fyycode/test /home/fyycode/test5 //递归剪复制目录中所有文件和文件夹
![image-20240518113505996](https://img-blog.csdnimg.cn/img_convert/9bacf11c81da8c1454d0ae4dc32ce22b.png)
搜索目录
![image-20240518113726165](https://img-blog.csdnimg.cn/img_convert/67a7c480c8e6acf533b06d07d1666cc0.png)
文件操作
新增
touch hello.txt
查看文件
cat a.txt //查看文件最后一屏内容
less a.txt //PgUp向上翻页,PgDn向下翻页,"q"退出查看
more a.txt //显示百分比,回车查看下一行,空格查看下一页,"q"退出查看
tail -100 a.txt //查看文件的后100行,"Ctrl+C"退出查看
编辑文件
vi 文件名 //打开需要编辑的文件,退出编辑 :q 强制退出 :q! 保存并退出: :wq
删除文件
rm 文件名 //删除当前目录下的文件
rm -f 文件名 //删除当前目录的的文件(不询问)
文件检索
find . -name "*.c" //将目前目录及其子目录下所有延伸档名是 c 的文件列出来
find . -type f //将目前目录其其下子目录中所有一般文件列出
find . -ctime -20 //将目前目录及其子目录下所有最近 20 天内更新过的文件列出
find /var/log -type f -mtime +7 -ok rm {} \; //查找/var/log目录中更改时间在7日以前的普通文件,并在删除之前询问它们
find . -type f -perm 644 -exec ls -l {} \; //查找前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件
find / -type f -size 0 -exec ls -l {} \; //为了查找系统中所有文件长度为0的普通文件,并列出它们的完整路径
whereis ls //将和ls文件相关的文件都查找出来
which bash //查看指令"bash"的绝对路径,which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
grep -i "the" demo_file //在文件中查找字符串(不区分大小写)
grep -A 3 -i "example" demo_text //输出成功匹配的行,以及该行之后的三行
grep -r "ramesh" * //在一个文件夹中递归查询包含指定字符串的文件
文件授权
// 'r' 代表可读(4),'w' 代表可写(2),'x' 代表执行权限(1),括号内代表"8421法"
chmod +x a.txt //普通授权
chmod 777 a.txt // 8421法 1+2+4=7,"7"说明授予所有权限
压缩和解压缩
tar -zcvf 打包压缩后的文件名 要打包的文件1 要打包的文件2 要打包的文件3
tar -zxvf a.tar //解包至当前目录
tar -zxvf a.tar -C /usr //指定解压的位置
unzip test.zip //解压*.zip文件
unzip -l test.zip //查看*.zip文件的内容
tar -zxvf a.tar //解包至当前目录
tar -zxvf a.tar -C /usr //指定解压的位置
unzip test.zip //解压*.zip文件
unzip -l test.zip //查看*.zip文件的内容