前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux 下如何使用 fc 命令

Linux 下如何使用 fc 命令

原创
作者头像
Linux开发那些事儿
修改于 2021-01-06 01:30:07
修改于 2021-01-06 01:30:07
5K00
代码可运行
举报
文章被收录于专栏:Linux开发Linux开发
运行总次数:0
代码可运行

使用Linux的过程中,在处理很长的并且包含复杂的语法的命令时,如果不小心犯了一点小错误,需要重新输入整个命令以及参数,直到命令执行成功为止。另一种选择是使用 fc 命令编辑并重新运行前一个命令,而无需重新输入整个命令以及参数。

fc简介

fc 命令是 fix command 的缩写,是一个内建命令,它能列出、编辑、重新执行最近在交互shell中输入的命令,你可以使用指定的编辑器编辑并运行最近输入的命令,而不需要重新输入整个命令。

fc命令的语法如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc --h
fc: usage: fc [-e ename] [-lnr] [first] [last] or fc -s [pat=rep] [command]

-e 选项

使用指定的编辑器编辑,默认是 vi 编辑器, 在下面的例子中ls /home/tt 命令在 vi 中编辑,把 ls 改成 cd,在保存退出的时候会执行 cd /home/tt 命令, 具体的结果如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc -l
657      ls /home/tt
658      fc -l
[root@ecs-centos-7 ~]# fc -e vi 657
ls /home/tt
"/tmp/bash-fc-27929723442" 1L, 12C written
cd /home/tt
[root@ecs-centos-7 tt]# pwd
/home/tt
[root@ecs-centos-7 tt]#

-l 选项

列出最近的历史命令,默认是16条

  • 不带参数,默认显示最近的16条命令
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc -l
1        date
2        cd ~
3        fc -l
4        fc -lr
5        ls /home/tt
6        chage -l
  • 显示最近的指定行数,下面的命令显示最近的3行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc -l -3
4        fc -lr
5        ls /home/tt
6        chage -l
[root@ecs-centos-7 ~]# 
  • 指定起始行号,显示从指定行号到末尾行的命令,下面的命令显示行号为530到末尾行的命令
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 wl]# fc -l 530
530      date
531      chage -l tt
532      chage -h
533      chage -l root
534      fc -l
  • 指定起始行号以及结束行号,显示指定行号区间的命令,下面的命令显示行号从531-534的命令
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 wl]# fc -l 531 534
531      chage -l tt
532      chage -h
533      chage -l root
534      fc -l

-r 选项

逆序显示历史命令,一般都是跟 -l 参数一起使用,下面是使用 -r 选项的例子。fc -l 选项显示的是从1到2行的命令。执行 fc -lr 显示的命令行数要包括前面 fc -l 的命令,所以结果会比前面多一行,执行逆序之后的行数是从3到1行, 具体的结果如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc -l
1        date
2        cd ~
[root@ecs-centos-7 ~]# fc -lr
3        fc -l
2        cd ~
1        date
[root@ecs-centos-7 ~]#

-n 选项

显示历史命令时不显示行号,一般都是跟-l参数一起使用, 下面的例子中没有显示行号

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 tt]# fc -l
1        date
2        chage -l tt
[root@ecs-centos-7 tt]# fc -ln
         date
         chage -l tt
         fc -l
[root@ecs-centos-7 tt]#

-s 选项

-s [pat=rep] [command] 把 pat 命令替换成 rep 命令并执行,下面的例子把 ls /home/tt 替换成 cd /home/tt命令,执行成功之后,当前目录变成了 /home/tt 命令执行结果如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 tt]# fc -l
1        date
2        ls /home/tt
[root@ecs-centos-7 tt]# fc -s cd=ls 2
ls /home/tt
[root@ecs-centos-7 tt]# pwd
/home/tt
[root@ecs-centos-7 tt]# 

小技巧

一个有用的小技巧, 使用 fc -s 'pre' 可以自动运行最近一个以 'pre' 开头的命令,输入 fc -s 命令 可以再次执行这个命令。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc -l
1        ls /home/tt
2        chage -l
3        date

上面是历史命令列表,执行 fc -s 'da' 命令会执行最近一个以 'da' 开头的命令,下面是具体的执行结果

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[root@ecs-centos-7 ~]# fc -s 'da'
date
Mon Jun 29 20:26:33 CST 2020
[root@ecs-centos-7 ~]# fc -s 'l'
ls /home/tt
[root@ecs-centos-7 ~]# fc -s
ls /home/tt

从上面的结果来看,执行 fc -s 'da'会执行最近一条以 'da' 开头的命令,也即 date 命令。

执行 fc -s 'l' 命令会执行最近一条以 'l' 开头的命令,也即 ls /home/tt 命令,紧接着执行 fc -s命令,会再次执行一次 ls /home/tt 命令

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python中gdal栅格影像读取计算与写入及质量评估QA波段筛选掩膜
  本文介绍基于Python语言gdal等模块对遥感影像加以处理的详细代码与操作。
疯狂学习GIS
2023/07/09
3720
Python中gdal栅格影像读取计算与写入及质量评估QA波段筛选掩膜
Python中gdal实现MODIS遥感影像数据读取与质量控制QC波段筛选及掩膜
  前期推文Python中gdal栅格影像读取计算与写入及质量评估QA波段筛选掩膜详细介绍了基于Python语言gdal等模块实现遥感影像栅格数据的读取,以及基于质量评估(QA)波段实现栅格像元筛选与掩膜的全部操作。而在本文,我们依据前述这一篇推文的代码,结合大家更为熟悉的MODIS系列遥感影像产品,基于其质量评估波段进行具体的对照讲解。也就是说,本文重点不在于代码的讲解(具体代码在前述这一篇推文中已经很详细地介绍了),而是将上述代码在更为具体的一个实践中加以应用,告诉大家该如何选择波段、处理质量评估QA波段并进行筛选操作等。同时,这里还有一点需要注意:在MODIS系列遥感影像中,质量评估波段更应该称为质量控制波段,因为其官方手册中将其写作Quality Control,因此后文就写作质量控制波段或QC波段。
疯狂学习GIS
2022/02/23
1.5K0
Python中gdal实现MODIS遥感影像数据读取与质量控制QC波段筛选及掩膜
Python中gdal实现多幅栅格影像批量绘制直方图
  现需要对多幅栅格数据文件进行直方图绘制,具体绘制内容即各栅格图像像素数值的分布情况;所有栅格数据都保存在同一目标路径下,且均为.tif格式;而目标路径下具有其它非.tif格式的文件,以及不需要进行直方图绘制的.tif格式文件,因此需要在绘制前对目标路径下的文件列表加以筛选,只保留需要绘制直方图的栅格文件。
疯狂学习GIS
2023/07/09
3040
Python中gdal实现多幅栅格影像批量绘制直方图
Python中arcpy栅格创建与多景遥感影像批量拼接
  本文介绍利用Python语言arcpy等模块,实现栅格图层建立与多幅遥感影像数据批量拼接(Mosaic)的操作。
疯狂学习GIS
2023/07/09
4020
Python中arcpy栅格创建与多景遥感影像批量拼接
Python | GDAL处理影像
注意读取数据的数组下标不要越界!GDAL并不会自动帮你处理下标越界的问题,它只会报错。因此特别当你想用部分读取的方式处理一个很大的文件时,对边界的处理需要你特别的注意,必须正好读完不能越界也不能少读。
GIS与遥感开发平台
2022/04/29
4.6K0
Python | GDAL处理影像
python+GDAL+numpy,点图层提取栅格像元数据
这部强调:投影坐标一定要一致(shp和栅格)!!!投影坐标一定要一致(shp和栅格)!!!投影坐标一定要一致(shp和栅格)!!!CRS.from_epsg('32650')!CRS.from_epsg('32650')!!CRS.from_epsg('32650')!!
一个有趣的灵魂W
2020/09/15
1.7K0
python+GDAL+numpy,点图层提取栅格像元数据
多值提取至点Python实现:找到不同栅格相同位置像元
  本文介绍基于Python语言中的gdal模块,对2景不同的遥感影像加以对应位置像素值匹配的方法——即基于一景遥感影像的每一个像元,提取另一景遥感影像中,与之空间位置相同的像元的像素值的方法。
疯狂学习GIS
2024/04/12
3080
多值提取至点Python实现:找到不同栅格相同位置像元
Python批量绘制多张遥感影像并分别设定子图标题
  本文介绍基于Python语言的matplotlib模块与gdal模块,读取大量长时间序列遥感影像,分别将其不同时相的图像作为子图,绘制在1个完整的大图中,并分别为每1个子图构建、显示标题的方法。
疯狂学习GIS
2025/04/13
1080
Python批量绘制多张遥感影像并分别设定子图标题
Python中GDAL绘制多波段图像的像素时间变化走势图
  本文介绍基于Python中的gdal模块,对大量长时间序列的栅格遥感影像文件,绘制其每一个波段中、若干随机指定的像元的时间序列曲线图的方法。
疯狂学习GIS
2023/09/06
3210
Python中GDAL绘制多波段图像的像素时间变化走势图
Python提取大量栅格文件各波段的时间序列与数值变化
  本文介绍基于Python语言,读取文件夹下大量栅格遥感影像文件,并基于给定的一个像元,提取该像元对应的全部遥感影像文件中,指定多个波段的数值;修改其中不在给定范围内的异常值,并计算像元数值在每一景遥感影像中变化的差值;最终将这些数据保存为一个新的Excel表格文件的方法。
疯狂学习GIS
2024/07/22
1860
Python提取大量栅格文件各波段的时间序列与数值变化
Python辐射校正遥感图像并以一列的形式导出Excel
  本文介绍基于Python语言中的gdal模块,读取一景.tif格式的栅格遥感影像文件,提取其中每一个像元的像素数值,对像素值加以计算(辐射定标)后,再以一列数据的形式将计算后的各像元像素数据保存在一个.csv格式文件中的方法。
疯狂学习GIS
2024/02/29
2080
Python辐射校正遥感图像并以一列的形式导出Excel
用R处理NASA数据(.hdf 或.nc文件)
这里不在赘述,参考如何获取NASA数据,下面的例子根据下载的LandCover与Rainfall数据进行展示,如何利用R语音进行读取,然后绘图。先加载所需R包及地图文件
Jamesjin63
2022/10/25
1.4K0
用R处理NASA数据(.hdf 或.nc文件)
读取HDF或者NetCDF格式的栅格数据
HDF(Hierarchical Data Format)由NCSA(National Center for Supercomputing Applications)设计提出,官方对其定义是:HDF5 is a unique technology suite that makes possible the management of extremely large and complex data collections.
卡尔曼和玻尔兹曼谁曼
2019/01/22
1.8K0
Python GDAL批量求取栅格文件两两之差
  本文介绍基于Python语言,针对一个含有大量遥感影像栅格文件的文件夹,从其中第2景遥感影像开始,分别用每一景影像减去其前一景影像,从而求取二者的差值,并将每一个所得到的差值结果保存为新的一景遥感影像文件的方法。
疯狂学习GIS
2024/10/14
1120
Python GDAL批量求取栅格文件两两之差
遥感数据机器学习的准备工作:python将栅格数据提取至EXCEL
大部分我们处理的降水、气温等栅格数据的格式是nc形式,需要我们将他转换成栅格数据并导入至Arcgis中,进行下一步操作。
Twcat_tree
2023/02/28
1.5K0
遥感数据机器学习的准备工作:python将栅格数据提取至EXCEL
【Python】GDAL基本操作/遥感大图显示
遥感图像往往尺寸较大,无法用默认的图像浏览器加载。 GDAL是空间数据处理的开源包,支持多种数据格式的读写。 遥感图像是一种带大地坐标的栅格数据,因此,可以借用GDAL对遥感图像进行读写,本文就来记录一些相关操作。
zstar
2023/02/10
2.6K0
Python自动计算大量遥感数据的NDVI
  本文介绍基于Python中的gdal模块,批量基于大量多波段遥感影像文件,计算其每1景图像各自的NDVI数值,并将多景结果依次保存为栅格文件的方法。
疯狂学习GIS
2024/07/31
1910
Python自动计算大量遥感数据的NDVI
Python GDAL依据栅格图像提取另一影像的像素
  本文介绍基于Python中GDAL模块,实现基于一景栅格影像,对另一景栅格影像的像元数值加以叠加提取的方法。
疯狂学习GIS
2023/06/26
2030
Python GDAL依据栅格图像提取另一影像的像素
Maiac文件的AOD信息提取-by python
Modis数据向来风骚,其HDF里包含了很多subdataset,其中有一个maiac的数据尤为特别。Maiac文件里含有大概12个数据集,每个数据集里又有4个波段(维度),如果按GDAL的translate函数直接转换,将得到错误的结果,会只得到第一个波段Band1如下:
一个有趣的灵魂W
2020/09/15
9020
Maiac文件的AOD信息提取-by python
栅格数据创建与保存
使用Python进行栅格数据处理,很多时候,我们会将GDAL的Dataset对象转化为NumPy的ndarray对象,这样我们可以使用很多通用的Python库对数据进行处理,然后再借助GDAL库将数据写回到文件。
卡尔曼和玻尔兹曼谁曼
2019/01/22
1.7K0
推荐阅读
相关推荐
Python中gdal栅格影像读取计算与写入及质量评估QA波段筛选掩膜
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验