当前位置:首页 > 经验 >

linux中怎么删除操作历史命令(linux怎么快速删除命令)

来源:原点资讯(www.yd166.com)时间:2024-04-01 18:14:00作者:YD166手机阅读>>

Linux 是一套免费使用和自由传播的类 UNIX 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。严格来讲,Linux 这个词本身只表示 Linux 内核,但实际上人们已经习惯了用 Linux 来形容整个基于 Linux 内核,并且使用 GNU 工程各种工具和数据库的操作系统。

linux中怎么删除操作历史命令,linux怎么快速删除命令(1)

Linux基本命令归纳整理


1. 帮助命令

内建命令和外部命令

在我们使用 Linux 操作系统的时候,经常会使用一些命令,但是由于时间长久的原因导致我们对于其使用方法的忘记。本文,就是为了解决这个问题而生的,授之以鱼不如授之以渔。

  • [1] 内部命令

实际上是 shell 程序的一部分,其中包含的是一些比较简单的 linux 系统命令,这些命令由 shell 程序识别并在 shell 程序内部完成运行,通常在 linux 系统加载运行时 shell 就被加载并驻留在系统内存中。内部命令是写在 bash 源码里面的,其执行速度比外部命令快,因为解析内部命令 shell 不需要创建子进程。比如:exit,history,cd,echo 等。

escape@ubuntu:~\$ type cd cd is a shell builtin

# 内建命令帮助获取方式 escape@ubuntu:~$ help echo echo: echo [-neE] [arg ...] Write arguments to the standard output.

  • [2] 外部命令

外部命令是 linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。通常外部命令的实体并不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。shell 程序管理外部命令执行的路径查找、加载存放,并控制命令的执行。shell 程序搜寻可执行程序文件的路径定义在PATH环境变量中,使用 echo $PATH 来查看。外部命令是在 bash 之外额外安装的,通常放在固定目录下。比如:ls,vi 等

escape@ubuntu:~\$ type mount mount is /bin/mount

  • [3] 常用命令
  • type命令
    • 用于查看命令属于内建命令或者外部命令
    • type -a COMMAND:可以列出某命令的所有位置(包括内部和外部)
    • type -P COMMAND:可以显示内部命令的路径
  • which命令
    • 用于查看外部命令的路径
  • whereis命令
    • 用于查看外部命令的路径和man命令的帮助文件 -whatis命令
    • 用于模糊匹配操作命令的帮助并列出帮助手册
    • CentOS6上执行makewhatis可手动更新搜索的数据库
    • CentOS7上执行mandb可手动更新搜索的数据库

escape@ubuntu:~\$ whatis date cal(1), ncal(1) - displays a calendar and the date of easter date(1) - display or set date and time iwidgets_datefield(n), iwidgets::datefield(n) - Create and manipulate a date field widget ntpdate(8) - set the date and time via NTP


1.1 内建 hash 命令

在 shell 搜中寻到的外部命令的路径结果会缓存至 key-value 存储中,而 hash 用来显示命令缓存。

# 显示命令缓存次数 [root@centos7 ~]# hash hits command 2 /usr/bin/file 8 /usr/bin/ls # 列出缓存过的命令 [root@centos7 ~]# hash -l builtin hash -p /usr/bin/file file builtin hash -p /usr/bin/ls ls

# 可以给命令建立缓存 [root@centos7 ~]# hash -p /usr/bin/file f [root@centos7 ~]# hash -l builtin hash -p /usr/bin/file file builtin hash -p /usr/bin/file f builtin hash -p /usr/bin/ls ls # 删除某个命令的缓存 [root@centos7 ~]# hash -d f [root@centos7 ~]# hash -l builtin hash -p /usr/bin/file file builtin hash -p /usr/bin/ls ls

# 列出单个别名的路径 [root@centos7 ~]# hash -t file /usr/bin/file # 删除所有命令缓存 [root@centos7 ~]# hash -r [root@centos7 ~]# hash hash: hash table empty


1.2 内建 history 命令

history 命令用于管理命令历史。当登录 shell 时,会读取命令历史文件(~/.bash_history)中记录下的命令。当登录进 shell 后新执行的命令只会记录在缓存中,这些命令会用户退出时“追加”至命令历史文件中。

# [命令选项] # 追加本次会话新执行的命令历史列表至历史文件中 $ history -a # 删除历史中指定的命令 $ history -d # # 清空命令历史 $ history -c

# [快捷操作] # 调用历史中第#条命令 !# # 调用历史中最近一个以string开头的命令 !string # 上一条命令 !!


1.3 外部 man 命令

man 命令的配置文件 /etc/man.config。

# 要查看指定章节中的手册 man1: 用户命令 man2: 系统调用 man3: C库调用 man4: 设备文件及特殊文件 man5: 配置文件格式 man6: 游戏 man7: 杂项 man8: 管理类的命令

# 指明新的手册文件搜索位置 $ MANPATH /PATH/TO/SOMEWHERE # 到指定位置下搜索COMMAND命令的手册页并显示 $ man -M /PATH/TO/SOMEWHERE COMMAND # 帮助手册中的段落说明 NAME SYNOPSIS DESCRIPTION OPTIONS EXAMPLES AUTHOR REPORTING BUGS SEE ALSO


1.4 外部 info 命令

# 查看帮助 $ info COMMAND


2. 日期时间

Linux 中提供了什么我们日常操作所需要的基础命令,我们需要经常使用它们来提高我们的效率。本文将介绍几种 Linux 常用的命令以及操作,耐心看完肯定会对你有帮助的。

2.1 date 命令

系统时钟设定命令

格式

  • date [OPTION]... [ FORMAT]
  • date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

设置

  • FORMAT 格式符号%F :年月日全格式,例如 2016-06-21%T :时间全格式,例如 13:14:42%Y:年%m:月%d:日%H:小时%M 分-%S 秒%s:从 1970 年 1 月 1 日 00:00:00 开始的秒数
  • 系统时间设定 date [MMDDhhmm[[CC]YY][.ss]]MM: 月分DD:几号hh: 小时mm: 分钟YY: 两位年份CCYY: 四位年份.ss: 秒钟

# 设置时间显示格式 [root@centos7 ~]# date "%F %T" 2017-05-19 20:01:17 [root@centos7 ~]# date "%Y%m%d" 20170519 # 修改系统时间 [root@centos7 ~]# date 122111112012.11 Fri Dec 21 11:11:11 CST 2012

# 显示昨天是星期几 [root@centos7 ~]# date --date="yesterday" %a Sun [root@centos7 ~]# date --date="yesterday" %A Sunday # 显示当前时间,格式:2016-06-18 10:20:30 [root@centos7 ~]# date "%F %T" # 设置当前日期为2019-08-07 06:05:10 [root@centos7 ~]# date 080706052019.10


2.2 hwclock 命令

clock 又或者 hwclock,是一样的命令。

Linux 的两种时钟

  • 系统时钟(System Clock)由 Linux 内核通过 CPU 的工作频率进行的计时,指当前 Linux Kernel 中的时钟。
  • 硬件时钟(Real Time Clock)是主板上由电池供电的那个主板硬件时钟,这个时钟能在 BIOS 的“Standard BIOS Feture”项中进行设置。
  • 区别和联系如果使用 date 命令修改了系统时间,并不会自动去修改硬件时钟,因此,当系统下次重启时,系统时钟还会从硬件时钟去取,date 设置的时间就无效了。因此需要 hwclock 命令再来同步系统时钟到硬件时钟,这样下次启动的时候内核则会读取正确的硬件时间到系统时间。

参数选项

  • -s, --hctosys
    硬件时钟同步到系统时钟上,把系统时间调成和硬件时钟一样
  • -w, --systohc
    系统时钟同步到硬件时钟上,把系统时间调成和硬件时钟一样

# hctosys $ hwclock -s # systohc $ hwclock -w


2.3 ntpdate 命令

前提是 IP 所在的那台机器启用了 NTP 服务!

# 用于同步时间 $ htpdate 172.17.0.1


2.4 选择时区命令

交互式命令:tzselect;非交互式命令:timedatectl

  • [1] 交互式命令 - tzselect

CentOS 6/7 都支持的命令:tzselect,是一个交互式的命令,用于选择时区。

linux中怎么删除操作历史命令,linux怎么快速删除命令(2)

Linux基本命令归纳整理 - 选择时区

  • [2] 非交互式的命令 - timedatectl 命令

timedatectl 命令只支持 CentOS 7 系统。

# 时间状态 $ timedatectl status # 列出时区 $ timedatectl list-timezones # 更改时区 $ timedatectl set-timezones Asia/Shanghai

  • [3] 直接覆盖文件

# 在CentOS6/7都支持一个非交互式的方法 $ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


3. 别名使用

主要用到两个命令:alias & unalias

  • alias:显示当前使用的别名。
  • alias NAME="XXXX":给某段命令或路径加别名
  • unalias NAME:去掉某个命令的别名

[root@centos7 ~]# alias cdnet="cd /etc/sysconfig/network-scripts/" [root@centos7 ~]# cdnet [root@centos7 network-scripts]# pwd /etc/sysconfig/network-scripts [root@centos7 network-scripts]# alias alias cdnet='cd /etc/sysconfig/network-scripts/' alias grep='grep --color=auto' alias ll='ls -l --color=auto' [root@centos7 network-scripts]# unalias cdnet [root@centos7 network-scripts]# alias alias grep='grep --color=auto' alias ll='ls -l --color=auto'

  • 不用别名,用原始命令的话,可以用下面的方法。

\COMMAND 'COMMAND' '/PATH/TO/COMMAND'

  • 永久保存 alias 的方法针对一个用户的环境变量:更改 vim ~/.bashrc 文件针对全局用户:更改 /etc/bashrc 文件(不推荐,不同用户有不同需要和偏好)

# 下面是某些alias设置 alias vi ="vim" alias cdnet="cd /etc/sysconfig/network-scripts" alias vimnet1="vim /etc/syscofig/network-scripts/eth0" alias vimnet2="vim /etc/syscofnig/network-scripts/eth1" # 更改完成后,可以用`source`或`.`命令来使之立即生效,或者重启shell: [root@centos7 ~]# source ~/.bashrc [root@centos7 ~]# . ~/.bashrc


文章作者: Escape

文章链接: https://www.escapelife.site/posts/b1e17a99.html

版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Escape !

,

栏目热文

linux删除目录命令有哪些(linux强制删除目录命令)

linux删除目录命令有哪些(linux强制删除目录命令)

概述在大多数情况下,我们在linux中删除文件和目录是通过rm命令,这些方法并不能永久、安全地从硬盘(或任何存储介质)中...

2024-04-01 18:04:46查看全文 >>

linux命令记录删除(linux删除文件夹命令行)

linux命令记录删除(linux删除文件夹命令行)

在服务器运行维护过程中,经常需要清理日志文件以节省存储空间。那么如何找到并清理这些旧文件或目录呢?此时,我们将使用lin...

2024-04-01 17:42:07查看全文 >>

linux删除上一条命令(linux怎么删除历史命令)

linux删除上一条命令(linux怎么删除历史命令)

sed 命令是 Linux 中的重要命令之一,在文件处理方面有着重要作用。可用于删除或移动与给定模式匹配的特定行。-- ...

2024-04-01 17:50:33查看全文 >>

linux中清除命令(linux 强制删除命令)

linux中清除命令(linux 强制删除命令)

用户在Linux终端上运行指令时,常常会苦恼屏幕上布满了指令和这些指令的输出,需要清除终端从顶部继续开始。在本文中,笔者...

2024-04-01 18:12:26查看全文 >>

linux常用删除命令大全(linux常用命令大全最完整)

linux常用删除命令大全(linux常用命令大全最完整)

1、删除目录:rm 删除文件夹f1 eg: rm -r f1 删除目录fnn以及其下所有文件、文件夹且并不提示 eg:...

2024-04-01 18:07:47查看全文 >>

linux 全部删除命令(linux常用命令删除目录)

linux 全部删除命令(linux常用命令删除目录)

假如有人问你,你会在Linux中批量删除文件吗? 你会想一下,说会啊。无非就是find找出来,然后使用rm -f去删除...

2024-04-01 18:11:46查看全文 >>

英雄联盟是什么类别游戏(英雄联盟算是什么种类游戏)

英雄联盟是什么类别游戏(英雄联盟算是什么种类游戏)

《英雄联盟》(League of Legends,简称LOL)是由美国拳头游戏(Riot Games)开发的一款英雄对战...

2024-04-01 17:42:10查看全文 >>

英雄联盟是免费游戏吗(英雄联盟有哪些游戏是免费的)

英雄联盟是免费游戏吗(英雄联盟有哪些游戏是免费的)

作者:NGA-♀り浅川灬(♀随着2021年的到来,各种年度数据报告已经出炉,而数据统计网站SuperData在1月8日发...

2024-04-01 18:00:05查看全文 >>

英雄联盟是不是免费的游戏(英雄联盟游戏介绍官网)

英雄联盟是不是免费的游戏(英雄联盟游戏介绍官网)

英雄联盟现在发展了将近一代人青春的时间了,所以皮肤从之前的稀有变成了常见,现在无论是匹配还是排位,都经常可以看到每个人都...

2024-04-01 18:21:29查看全文 >>

qq邮箱怎样免费登录(qq邮箱怎么手机登录)

qq邮箱怎样免费登录(qq邮箱怎么手机登录)

网络爬虫学习中,简单的静态页面数据,难以满足我们的一颗“好学”之心,且现在我们“好奇”的数据往往藏得很深,要么需要登录,...

2024-04-01 17:57:37查看全文 >>

文档排行