Linux 指令

命令行本质是对操作系统进行直接或间接的操作,指令的本质就是由C、C++或者其他语言编译的可执行程序

ls

  • ls:默认显示当前目录下的所里文件名
  • -l选项:显示文件的详细信息
  • -a选项:显示出隐藏文件(文件名以 '.' 号开头的文件)
  • -d选项:结合通配符,来确认目录是否存在
  • -i选项:用于显示文件或目录的 inode 号码(Inode 是文件系统中用于存储文件元数据(如权限、所有者、时间戳等)的数据结构,每个文件或目录都有一个唯一的 inode 号码)

cd 

  • cd 后面跟目录的相对路径或者绝对路径
  • 非目录文件一定是多叉树的叶子节点
  • 路径中的文件一定是目录
  • 来用路径的方式来找到唯一标识文件的方式,因为如何一个子目录都只有一个父目录
  • ~ 进入当前用户家目录;即whoami
  • - 跳转到上一次的路径

touch

  • 创建指定目录下的普通文件
  • 若文件存在则修改对应的时间

stat 

  • 显示文件或文件系统的详细信息
  • Access (atime):文件最后被访问的时间。例如,使用 cat 命令查看文件内容时会更新该时间。
  • Modify (mtime):文件内容最后被修改的时间。例如,使用 echo 命令修改文件内容时会更新该时间。
  • Change (ctime)文件属性或状态最后被修改的时间。例如,修改文件权限、所有者,或重命名文件时会更新该时间。

mkdir

  • 默认创建在当前目录下
  • 默认创建空目录,不能创建带路径的目录
  • -p选项可以创建不存在的父目录

tree

  • yum install -y tree
  • 默认是当前目录为入口,显示其所有的叶子节点

rmdir

  • 只能删空目录

★rm

  • rm filename 默认删除普通文件,如果文件是只读的,可能会提示确认删除
  • -r :递归删除目录及其所有内容,只要是文件夹就要带上,不管文件夹是不是空的
  • -f :强制删除文件,不二次询问
  • rm 一定要指定路径;不会默认删除当前目录下的所有内容
  • 忌:rm -rf / ;会强制删除根目录下的所有文件和目录,将导致系统崩溃

man

  • yum install -y man-pages
  • 从1号开始查,查到就停
  • 使用不了就是没有装,因为云服务器默认是一种身产环境,是真正的一个网络服务运行的环境,所以凡是和运行不相关的都是没有装的
  • '↑' 上翻
  • ‘↓’ '回车' 下翻

nano

  • 记事本,保存:ctrl + x;大写Y;回车

★cp

  • cp src dst

拷贝非目录文件

  • cp test.c dir1 拷贝非目录文件到现有目录,dir1需要存在
  • cp test.c dir1/rename.c   拷贝的同时重命名

拷贝目录文件 -r

  • -r 拷贝src目录到dst;
  • cp -r src dst 递归拷贝 src 目录及其所有内容到 dst;如果 dst 已经存在,则 src 目录将被拷贝到 dst 目录下;如果 dst 不存在,则 dst 将被创建,并且 src 的内容将被拷贝到 dst 中
  • dst若是一个路径,路径中除最后一个的目录,其他都必须存在
  • 看目标路径的最后一个目录,若这个目录存在,则拷贝到这个目录下;若不存在,则被认为是重命名操作,是拷贝到目标路径的父目录下,并重命名为这个目录

★mv

  • mv src dst

剪切非目录文件

  • 同一目录下,可以直接重命名非目录名
  • 不同目录时,若目标目录的最后一个部分是目录,则剪切的该目录下;若是非目录文件,则是重命名

剪切目录文件

  • 同一目录下,可以直接重命名目录名
  • 不同目录下,若目标路径的最后一个部分不存在,则剪切到这个目录下;若存在,则覆盖这个目录

覆盖

  • 若src的最后一个部分和dst的最后一个部分相同则是覆盖

总结归纳

  • 可以重命名
  • src和dst中间的目录必须存在
  • 若最后一个部分同名则覆盖;若不同名,不是剪切到最后一个部分目录下,就是重命名非目录文件

>

  • echo "Hello Linux">test.txt
  • 若没有,则新建一个test.txt
  • >输出重定向,由写入显示器文件的内容改写到指定的文件中
  • 覆盖原来的内容;每次写入之前先清空内容
  • Linux下一切皆文件
  • >test.txt 清空test的内容

>>

  • 追加重定向

cat

  • -n:输出带行号
  • -s:不输出多行空格;多行连续的空格压缩成一行
  • -b:空行不算入行号
  • cat适合小文本
  • cat test.txt 其实是个输入重定向;由原来的从键盘读取内容,重定向到从文件读取内容
  • 单独cat 则是从键盘读取内容,再回显会显示器

more

  • 输出满一整个屏幕
  • 回车下翻,不能上翻
  • q:退出
  • 结合管道使用

★less

  • 适合大文件
  • ‘↑’ 回车 上翻;‘↓’下翻
  • "/str"向上搜索含有str的行;"?str"向下搜索含有str的行
  • -i:搜索时忽略大小写
  • -N:显示行号
  • n:重复前一个搜索
  • N:反向重复前一个搜索,就是原本向上搜索  变成向下搜索

cat

  • 文件倒着打印

head  tail

  • 查看文件的头/尾部,默认10行
  • -num:如-30,显示30行

查看300-320行

  • cat big.txt | head -320 | tail -20
  • 通过管道  " | " 将输入的内容作为输出,交给下一个指令,左侧的程序的输出会喂给管道;右侧的指令会将数据从管道中取出;
  • 可以用管道配合其他指令如:cat big.txt | head -320 | tail -20 | less;cat big.txt | head -320 | tail -20 | tac 倒着打印
  • head和tail配合使用,用来查找需要的地方;结合less方便查看和搜索

wc

  • wc -l big.txt 统计并显示文件的行数
  • cat big.txt | wc -l

uniq

  • uniq test.txt 对相邻的信息压缩去重

sort

  • sort test.txt 排序
  • 取出相同行:sort test.txt | uniq

date

  • [wzf@NineOne command]$ date +%Y_%m_%d_%H:%M:%S
    2024_07_25_10:59:00
  • [wzf@NineOne command]$ date +%s
    1721876410
  • ★时间戳,时间是被定义出来的,地球不同区域的时间不统一,互联网就很难同一;时间戳是1970.1.1累计到现在的秒数;线性增长,具有唯一性;用于标识对应的内容

cal

  • cal 显示当月
  • cal 2024 显示2024年的日历
  • cal -3 前月 当月 后月
  • 没什么用

★★★find

  • find +路径 + 选项
  • -name:按文件名搜索;find -name "*.txt"(单双引号都可以)
  • -iname:按名称搜索(不区分大小写)
  • -type:按文件类型搜索;f:普通文件;d:目录文件
  • -size: c,k,M,G;-num  +num
  • -mtine:按修改时间搜索 -num  +num
  • -atime:按访问时间搜索 -num  +num
  • -ctime:按状态(属性)变化时间搜索  -num  +num
  • -delete:找到后删除

-path str-prune -o

  • 不去str里搜索,常常和-o一起使用
  • -path:用于匹配指定路径
  • -prune:用于排除匹配路径及其子目录;路径匹配时,-prune返回真 (true)意味着此路径和其子目录将被排除
  • -o:将排除条件与其他搜索条件分隔开
  • 如果排除条件为真 (true),find命令就不会继续处理此路径及其子目录

which

  • 查看指令在哪个目录下安装的
  • 指令基本都在 /usr/bin

grep

  • 行过滤器
  • grep '999' big.txt :找到行中含有999的行
  • -i:ignore,即忽略大小写
  • -v:反选
  • -n:行号
  • 若在多个文件中grep,则在行开头加上对应的文件名

zip unzip

  • Linux下根据打包压缩的算法和工具不同,打包压缩的方式有很多
  • 什么是打包:把所有的东西放在一起
  • 什么是压缩:按照一定的算法,把放在一起的东西体积减少
  • 为什么要打包:防止文件丢失
  • 为什么要压缩:便于网络中软件资源,安装包等的传输和下载

使用

  • yum install-y zip unzip
  • zip dst src
  • dst 和 src 的规则和mv cp一样
  • zip test.zip *:解压当前路径中的所有内容,不包括子目录
  • unzip test.zip -d str:解压src (可以是一个路径,最后一个部分是zip)到 str
  • -r:在打包压缩目录时,一般都带上这个选项,可以递归一个目录下的所以子目录

★tar

  • 后缀:tar.gz 简称 tgz
  • -c:创建一个归档文件
  • -x:解压缩归档文件
  • -z:通过 gzip 进行压缩或解压缩
  • -v:显示处理过程中的详细信息
  • -f:指定归档文件的名称,后面必须紧跟文件名
  • tar cvzf dst src:打包压缩src 目录下文件到dst文件中,dst不能不写
  • tar xvzf src -C (dst):dst不写默认当前目录
  • dst 和 src 的规则和mv cp一样

tar与zip的区别

  • 最大的区别在于算法的不同,不同文件如:文本,视频,音频,图片,普通文件,二进制文件,他们的文件构成不一样;需要打包压缩的文件大小多少也不一样;不同的算法对应不同的场景,tar比较通用,一般云服务自带,无需yum下载

热键

  • ctrl r:搜索历史命令
  • Tab:提高指令的传输效率
  • ctrl d:退出
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值