Linux02-指令2

指令

cp

将目录或文件拷贝到指定路径

常见参数:

-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链 接,则一律视为普通文件处理
-R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理

1.拷贝普通文件

将lesson2中的file.txt文件拷贝到lesson3中
在这里插入图片描述

2.拷贝目录
普通的cp无法拷贝含有文件的目录,需要 -r 选项
在这里插入图片描述

3覆盖文件
一般的cp命令是将文件或目录拷贝到目录下,如果是将文件或目录拷贝到文件下,就会对文件进行重写,但不会更改名称。
在这里插入图片描述
这几条命令中,显示test1.txt中有一些文本内容,但lesson3中的file1.txt为空,进行cp后,file1.txt中就有了test1.txt的内容。

mv

移动文件或将文件改名

  1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
  2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
  3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

更改文件或目录名称
在这里插入图片描述

移动文件
在这里插入图片描述
mv + 文件名 + 路径名,一般加上 / 来说明是路径名。

cat

查看目标文件的内容,直接使用会从键盘获取数据,直接回显

常用参数:

-b 对非空输出行编号
-n 对输出的所有行编号
-s 不输出多行空行

相对应的tac命令能逆向打印文件内容,与cat相对

在这里插入图片描述

more

当文件内容较多,cat就不适用,因为cat一次性会输出所有内容,more命令可以分屏显示信息。

-n 对输出的所有行编号
q 退出more

在这里插入图片描述

。。。

管道

管道使用

dmesg命令能够把系统信息显示到显示器上,但dmesg显示的信息过多,不容易浏览。‘|’符号就是管道符号,相当于把dmesg命令得到的信息通过管道传输给其他命令,例如dmesg | more,就是将dmesg的系统信息通过more命令显示,更好的浏览。

dmesg命令显示的信息过多。
在这里插入图片描述
通过dmesg | more 显示的信息,可以进行翻页功能。
在这里插入图片描述

grep 行过滤工具

grep是一个管道过滤命令,相当于给管道加一个滤网,通过一些限定条件过滤一些信息。

在这里插入图片描述

dmesg | grep -i ‘err’ | more 这个命令相当于先得到系统信息,再把系统信息通过管道过滤得到含有err文本的信息,最后再给more显示。

日志

记录程序运行轨迹,运行记录的文件
通过日志可以查看程序运行中的各种事件,程序出现错误可以通过日志溯源。

重定向

输出重定向

echo 命令能够将所给数据直接显示出来,例如
在这里插入图片描述
直接显示信息。
> 为重定向符号,就是将所得到的数据重新定位,echo本来是将数据直接显示,>则是将数据转到另一个地方,例如:

在这里插入图片描述
这个重定向就是将echo得到的数据放到file1.txt里。
但有个问题就是file1.txt中原本是有内容的
aaaa
bbbb
但重定向之后file1.txt里的内容被替换了,这是因为>重定向符号是从头开始定向,若想追加数据则需要 >> 追加重定向符号。
如下:
在这里插入图片描述

输入重定向

< 为输入重定向符号,也是将数据给一些命令,例如

在这里插入图片描述
相当于将file1.txt中的数据给到cat命令,箭头的方向为数据的方向。

cat file1.txt 与cat < file1.txt的区别
cat < file1.txt 先输入重定向,在从file1.txt中读取数据
cat file1.txt 先打开file1.txt,在读取内容

如何快速清空文件:>file2.txt

在这里插入图片描述

将空的内容直接从开头重定向到文件中。

less

类似于more命令,但more只能向前移动,不能向后,但less可以

相关参数:

-i 忽略搜索时的大小写
-N 显示每行的行号
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
q:quit

less log.txt
在这里插入图片描述

head

显示文本的头部信息

在这里插入图片描述
显示前10行

tail

显示文本尾部信息
在这里插入图片描述
显示尾10行

如何提取中间信息?并且逆置

可以先通过head获得头部数据,再将所给的数据通过管道给tail获得尾部数据,若要逆置,则可以在给tac命令。
例如要获得10-19行数据并逆置,可以使用以下命令

在这里插入图片描述

date

date +%Y-%m-%d:%H:%M:%S ,将当前时间格式化表示,年月日时分秒的格式。
在这里插入图片描述
注意月份和天数都是小写,其他为大写。

date + %s,可以获取当前的时间戳。
在这里插入图片描述

date -d +时间戳 :转换时间,

在这里插入图片描述
若想格式化显示时间,可以再加上各种格式。
在这里插入图片描述

为什么要有时间戳?
时间戳是一个将时间简单表示的工具,并且可以用于一些连续查找问题,日常生活中各种和时间有关的活动都可以依赖时间戳,并且时间戳是一个无符号整数,便于储存。

时间戳溢出问题
时间戳溢出会引起很多底层东西的震动,举一个简单的借贷例子,很多借贷的还款日期都是依赖于时间戳,若时间戳溢出,则还款时间就会大乱。

cal

显示日历

-3 显示系统前一个月,当前月,下一个月的月历
-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)
-y 显示当前年份的日历

在这里插入图片描述
显示本月日历

grep

行过滤工具

-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

cat log.txt | grep ‘999’

根据前面的grep和管道的简单学习,可以知道,这个命令是搜索log.txt中含有999的数据行并显示。

在这里插入图片描述

再举一个简单例子,ps axj命令是用来显示所有的进程信息。
在这里插入图片描述
ps axj | grep httpd则可以用来检索含有httpd的进程。
在这里插入图片描述
grep也支持正则表达式
grep -E ‘999|888’ log.txt 命令则是搜索log.txt中既含有999又含有888的数据行。

find

which ls
用于查找命令所在路径

在这里插入图片描述

在这里插入图片描述

whereis ls
在系统特定路径下,进行文档,命令的查找
在这里插入图片描述

find /usr/ -name ls
在目录结构中寻找命令,但有时会很慢

在这里插入图片描述

在使用which ls 时,注意到 alias ls = ‘ls --color=auto’
alias 是起别名的意思,color 是显示时的默认颜色,我们也可以自定义给命令起别名
alias lll=‘ls -l -a -i --colot=auto’
这是代表我们自定义了一个别名,当我们输入lll的时候,相当于输入 ls -l -a -i,自定义的命令在退出终端的时候就会消失。

zip/unzip

在这里插入图片描述
对mydir这个目录进行压缩,解压的示例。
在这里插入图片描述

tar

压缩,解压

-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录

tar czf 压缩包名称 要打包的文件名称
c,创建,z压缩,f,创建新名称

tar xzf 压缩包名称 (+路径)
解压到指定路径
x,解包

具体例子:
在这里插入图片描述

bc

linux中的计算器
在这里插入图片描述
使用bc可以进行简单的运算,也可以使用echo将表达式给到bc,直接得出结果

在这里插入图片描述

uname

显示内核信息

-a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类 型,硬件平台类型,操作系统名称

在这里插入图片描述

VM-8-12-centos为主机名,3.10.0-1160.99.1.el7为内核版本,x86_64 x86_64 x86_64为cpu架构

  • 20
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值