文件:内容+属性
echo “”可以打印字符串 printf 也可以 (像显示器文件写入)
linux下一切皆文件
这叫输出重定向
echo
echo "hellow" > test.txt把语句写到文件中--输出重定向,没有文件创建文件(本来是显示器改写到文件:这叫输出重定向)
Cat test.txt打印内容
输出重定向:每次写入到文件之前,要先清空原始文件中的内容(本来写到显示器,写在了文件)
追加重定向:>>(两个>)不断让文件增多
fprintf向文件里写入
把写入方式从w(会清空) 改为a(append追加)就有内容了,每次空格就新增一次
>清空,>>追加重定向
程序运行会打开三个输出流
标准输入,输出,输出,错误(键盘,显示器,显示器)
都是文件指针
fp改为sudout就会打印到屏幕上
cat指令
功能:打印内容
cat -n text.txt 带行号 -s多行空行就输出一行 -b只对合法做编号(空行不带行号)
输入重定向
cat 回车
光标阻塞(不跟文件默认从键盘读取内容,然后回显回来)
cat <text,txt 输入重定向(本来从键盘读入数据,变成从指定文件中读取对应数据)
cat -n <text.txt带行号
more 查看大文件 直接回车就可以往下拉
more,less
less 查看大文件 可以上下翻(可以平替more) /搜索内容(查找搜索内容)
tac text.txt 反向查看文件
head,tail,管道,管道文件
head text.txt 只把文件头拿出来
head -5 text.txt 只显示前5行
tail -20 text.txt 显示尾部20个
区间内容:head -510 big.txt |(输出结果作为输入,交给tail)tail -10
“|”叫做管道,管道文件
tail -200 text.txt | less 就可以从后面上 下滑看文件了
wc
wc big.txt 统计文件字符数 行数
wc -l big.txt 统计文件 行数
unique(去重)
unique test.txt 对文件中相邻信息进行压缩(独一无二)
cat big.txt | wc -l
sort
sort test.txt | wc -l 对文件锁头内容进行去重
对文件内容进行排序
sort test.txt | uniq 就只剩不重复的内容
dmesg
查找日志信息
cat /var/log操作系统形成的日志
cat /var/log/messages | tail -5 看后五行日志信息
data
data不方便查看,进行格式化显示
data +%Y-%m-%d_%H:%M:%S年月日时分秒
data +%s时间戳
会显示一堆数字
daata -d @1690187470 年月日看时间戳
+%Y-%m-%d_%H:%M:%S 中文格式
call
日历call+2023是年历
call -3 前后三个月 -5不行
find指令
fin /home/zyz -name test.c 按名字严格查找,指定路径,指定名称
查找系统命令
which
指令所在路径下搜索指令
which date
which less等等
where ls
grep指令
行过滤工具
-i 模糊匹配忽略大小写 不带-i精准匹配
-v 把没有匹配的内容显现出来
ctrl+r搜索历史命令
搜索while出现历史出现的命令,不想用的话ctrl +c终止
用grep在两个文件中做搜索 加 -n可以看见 具体 行号
再加上机目录
用处:
快速在文件中查找指定文件内容行数
命令补齐功能
指令加tab会自动补齐
例如d开头指令
zip/unzip指令
压缩当前路径命名为test.zip
解压压缩包 这种解压只会拷贝当前层文件夹,例如拷贝文件中有file目录但是这种拷贝方式并没有拷贝file目录内的文件
删除当前目录所有文件,重新拷贝
递归压缩 -r
此时file目录文件也被压缩进去
指定路径解压 -d
tar命令
-c表示creat创建 z表示压缩
-cz创建并压缩 f指定文件名为
指定压缩包名为test.tgz
-xzf解压并指定名称
这种可以递归解压
解压到指定目录-C
bc指令
命令行级别的寄存器 输入quit退出
可以进行简单计算
uname -r(只看体系结构 和内核版本)
获取电脑和操作系统的相关信息
uname -a 看计算机 内核版本 和体系结构
cat /etc/redhat-release
tab,ctrl-c,ctrl-d
shundown
reboot 重启
外壳程序:
1.将用户输入的指令,解释传递给内个
2.内核执行命令,得到结果,奖结果通过外壳传递给用户
shell外壳
1.命令解释,2保护内核