Linux的基本指令002

文章目录


man

man指令用来在线查询Linux中的指令,按q推出

shell 复制代码
man ls

man也可以查找C语言中的指令

shell 复制代码
man 3 printf
/return value 

输入/return value可查找函数的返回值,相当于是定位查找

man后面的数字表示man的章节,man指令一共有九个章节,第一个章节(默认手册)查找可执行程序或者命令行的命令,二号手册查找的是系统调用,三号手册查找的是函数调用

cp

铺垫

在学习拷贝指令之前,我们需要知道以下几点

  • Linux下一切皆文件
    比方说最简单的操作
    打印到显示器->显示器也是文件->写入到显示器文件
    从键盘读取数据->键盘也是文件->从键盘我呢见读取数据
  • echo命令,将echo后面的数据当作是字符串(默认)写入到屏幕上
  • echo > 可写入到指定的文件,此操作就叫输出重定向
  • 重定向
    • 若文件不存在则新建文件
    • echo > 会先把文件内容先清空,再写入
    • > 文件名可直接新建一个文件
    • >>为追加重定向,不会清空原先文件中的内容
    • 任何可输出的操作都可进行重定向操作
shell 复制代码
ls -l > text.txt // 将内容写入到text文件中

正式cp

格式

拷贝普通文件 :cp src dst

拷贝目录 :cp -rf src dst

其中r表示要以递归的方式拷贝,f表示强制拷贝不进行交互

shell 复制代码
cp log.txt ../mylog.txt //将log文件拷贝到上级路径,并且修改名称

cat

打印文件内容

shell 复制代码
cat log.txt // 打印log文件的中的内容

cat 直接回车,会从键盘文件上读取内容,后打印到显示器上

shell 复制代码
cat < log.txt 

输入重定向,从log文件中读数据,打印在屏幕上

指令

指令实际上就是一个可执行程序,是一个特定系统路径下的程序,再Linux中这些指令存放在/usr/bin目录下/usr/bin/ls就可找到ls指令的介绍

还可以使用which 文件快速找到文件的路径

alias

alias的功能是对特定内容起别名

shell 复制代码
alias zhangsan = 'ls' //此时指令输入zhangsan就相当于指令ls

mv

mv全称是move,功能是剪切复制,格式mv src dst_dir,不用带任何选项,普通文件和目录都可直接剪切到指定路径

mv还可用于给文件改名

shell 复制代码
mv code.c newcode.c // 将文件重命名为newcode
mv code.c ../aaacode.c // 将文件移动到上级路径中并且重命名

cat

cat命令的功能是打印文件内容(默认是打印到屏幕上)
cat -n 选项n可在打印的时候加上行号
cat -s 选项s可不输出多行空行

tac

tac命令功能是将文本内容反向打印

more

在用cat命令打印文件内容时,如果打印的是一个小文件,则会很方便的打印在屏幕上,但是如果cat一个大文件,就会出现刷屏的情况,不利于我们查看文件内容,此时就看到了我们的more命令

more命令的功能是打印文件内容在屏幕上,但只打印一屏的内容,按enter则继续打印下一行的内容,按q可以直接退出

less

less指令和more的功能一样,查看大文本,更好的是less命令可以上下翻,并且支持高亮

less /内容 可以查找指定内容 输入n可以查看下一个匹配项

提取文件前指定行数查看

head -20 text.txt 可查看text文件的前二十行

tail

提取文件后指定行数查看

tail -20 text.txt 可查看text文件的后二十行

管道

shell 复制代码
head -2020 log.txt | tail -21

|管道 上述代码就可先提取文件的前2020行,再提取后21行,通过管道实现了对文本内容批量化的处理,像是流水线一样处理文本内容

时间相关的指令

date显示

shell 复制代码
date // 输出对应时间

注意到到的是,可以指定输出格式

shell 复制代码
date +%Y-%m-%d_%H:%M:%S

按照指定格式输出,之间的分隔符可以自定义,想输出空格需要用\ 来进行转意

时间戳

shell 复制代码
date +%s

时间戳是1970年1月1日凌晨到现在的秒数

可以结合data指令使用

shell 复制代码
date +%Y-%m-%d_%H:%M:%S -d @1729597542

按照指定形式显示时间戳对应的时间,以时间戳作为数据源来转换时间

cal

显示日历

shell 复制代码
cal
cal -3 
cal 2024

cal命令可以查看本月日历,加上 -3选项时,可显示前后一个月的日历,加上年份,可以查看本年度的日历

与查找相关的命令

find

shell 复制代码
find /home/yjc -name test.c
find /home/yjc -name *.c

find 加目录可以在指定路径下查找指定文件,*是通配符

find在系统目录中直接查找,可以查任意文件

which

用来查找可执行程序

相当于

shell 复制代码
which xxx
find /usr/bin/ -name xxx

whereis

支持模糊查找,找到指令的路径,找到文件,命令对应的手册

grep

功能是行文本过滤工具

shell 复制代码
grep '999' log.txt

把log文件中包含999的文本按行打印出来

shell 复制代码
grep -n '999' log.txt
grep -v '999' log.txt
grep -i 'main' log.txt

-n:打印时加入行号

-v:反向打印,将包含查找内容的行去除

-i:忽略大小写

打包压缩指令

使用特定的算法,对文件进行合并或者压缩,减少文件体积,这样做的好处是,文件体积减小,节省空间,减少网络传输成本,并且多个问价转为一个文件后,可以提高文件传输的容错性

zip

shell 复制代码
zip -r test.zip test // 对test文件进行打包压缩形成test.zip文件,文件中存在目录所以要加选项 -r 
unzip test.zip // 对文件进行解压解包到当前路径
unzip test.zip -d ../  // 解压到上一路径
sz test.zip // 将压缩文件传输到Windows中的指定目录下

tar

shell 复制代码
tar -czf test.tar.gz test // 将文件打包压缩
tar -czf test.tgz test // 简写
tar -cvzf test.tgz test 

选项

-c:表示creat 创建一个打包压缩的文件

-z:表示要进行压缩

-f:表示f后紧跟的就是要打包压缩的目标文件

-v:表示显示压缩/解包过程

shell 复制代码
tar -xzf test.tgz // 解压解包文件
tar -xvzf test.tgz test 
tar -xvzf test.tgz test -C ../lesson // 解压到指定路径
sz test.tgz // 传到Windows的指定路径
scp test.tgz xxx@yyy:zzz // 远程拷贝到另一台Linux机器上 xxx是指当前用户 yyy是指目标机器的ip地址zzz指目标机器的指定路径

bc

是一个命令行计算器

shell 复制代码
bc
echo 1+2+3+4*5/8%10 | bc

就可以将表达式的结果计算到屏幕上

uname

可以查看此机器的内核架构等属性

shell 复制代码
uname -a // 查看详细信息
uname -r // 查看内核版本

相关推荐
四维碎片几秒前
【Qt】QApplication::restoreOverrideCursor():恢复鼠标光标到原始状态的用法解析
开发语言·qt·计算机外设
HEX9CF34 分钟前
【Linux】SQLite 数据库安装教程(Ubuntu 22.04)
linux·数据库·sqlite
看山还是山,看水还是。1 小时前
Nginx 的 Http 模块介绍(中)
android·运维·网络·nginx·http
kimi-2221 小时前
Linux 常用命令二
linux
苏湘涵1 小时前
socket编程---UDP
linux·开发语言·网络·php·进程通信
、十一、1 小时前
Linux中ES的安装
linux·运维·elasticsearch
不甘平凡的蜜蜂1 小时前
第三十三篇:TCP协议如何避免/减少网络拥塞,TCP系列八
运维·网络·网络协议·tcp/ip·计算机网络·智能路由器
琪露诺大湿1 小时前
JavaEE-多线程初阶(1)
java·linux·开发语言·jvm·数据库·java-ee·1024程序员节
静思心远1 小时前
驱动和芯片设计哪个难
linux
风虎云龙科研服务器2 小时前
GPU 服务器:高性能计算的核心驱动力
运维·服务器