8.2 命令歷史

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

命令歷史

  • history //查看之前的命令
  • .bash_history //存放之前敲過的命令,在 /root/ 目錄下
  • 最大1000條 //默認參數值是1000條
  • 變量HISTSIZE
  • /etc/profile中修改 //在其中可編輯HISTSIZE參數
  • HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"
  • 永久保存 chattr +a ~/.bash_history //增加隱藏權限,讓他人無法刪除 !! 表示執行最后一條命令
  • !n 表示運行第幾條命令(n表示數字)
  • !echo 表示會在命令歷史里面,倒著網上找第一個執行以 echo 開頭的命令

查看敲過的命令存放位置

  • 在我們使用過的命令,會存放在用戶的家目錄下 /root/.bash_history
[root@localhost ~]# ls /root/.bash_history
/root/.bash_history
[root@localhost ~]# cat !$
cat /root/.bash_history
init 0
ping www.baidu.com
dhclient
ping www.baidu.com
yum install -y net-tools等等等

查看之前敲過的命令

  • history //查看之前敲過的命令
[root@localhost ~]# history1  init 02  ping www.baidu.com3  dhclient4  ping www.baidu.com5  yum install -y net-tools6  ifconfig

history命令中最多存放1000條歷史命令

  • history命令

    • 最多存放1000條
    • 是由環境變量HISTSIZE配置的
      • 這是系統內置的環境變量 HISTSIZE
        [root@localhost ~]# echo $HISTSIZE
        1000
        [root@localhost ~]# 
        
        • 有時敲命令的時候,會出來更多的數值
          • 這是因為 還沒有真正的寫入到文件中去,這些命令臨時存放在內存中
  • history -c //把當前內存里面命令歷史給清空

[root@localhost ~]# history -c
[root@localhost ~]# history1  history
但不會清空 .bash_history 配置文件,僅僅是把歷史命令給清空

在敲完命令后,直接到配置文件中查看,會發現其中并沒有存在 這是因為僅存在內存中,只有在退出終端的時候,才能夠保存到配置文件中去

環境變量HISTSIZE在 /etc/profile 中配置

  • vim /etc/profile //在文件中修改環境變量的參數
    • 進入后 /HISTSIZE 搜索,并修改參數 HISTSIZE=5000
    • 在修改完參數后,要使參數生效,需
      • 方法1:需要重進一下終端
      • 方法二:執行 source /etc/profile
[root@localhost ~]# vim /etc/profile    //在里面編輯文件,改變參數改變參數后,可以重啟終端,或者source /etc/profile,發現參數生效
[root@localhost ~]# source !$        //執行命令后,會發現HISTSIZE值變化了
source /etc/profile
[root@localhost ~]# echo $HISTSIZE
5000

記錄history查看歷史命令時間

  • 記錄命令使用的時間,給變量重新賦值,執行 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" 即可
    • 指定變量的格式
[root@localhost ~]# history1  history2  vim /etc/profile3  yum provides "/*/vim"4  yum install -y vim-enhanced5  vim /etc/profile6  source /etc/profile7  echo $HISTSIZE8  HISTIMEFORMAT="%Y/%m/%d %H:%M:%S"9  history
[root@localhost ~]# HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"
[root@localhost ~]# history1  2017/11/15 23:25:28history2  2017/11/15 23:35:08vim /etc/profile3  2017/11/15 23:35:29yum provides "/*/vim"4  2017/11/15 23:53:58yum install -y vim-enhanced5  2017/11/15 23:59:04vim /etc/profile6  2017/11/16 00:07:14source /etc/profile7  2017/11/16 00:07:31echo $HISTSIZE8  2017/11/16 00:13:45history9  2017/11/16 00:14:49HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"10  2017/11/16 00:14:51history11  
[root@localhost ~]# echo $HISTTIMEFORMAT
%Y/%m/%d %H:%M:%S
這個環境變量僅僅在當前窗口下的終端生效,在打開另一個終端的時候,就會顯示空的
也就是說,系統默認這個環境變量是不存在的
    1. 若想這個環境變量一直生效,則需要編輯 /etc/profile
[root@hf-01 ~]# vim /etc/profile進入配置文件中,在變量HISTSIZE下放入
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"
然后 :wq 保存退出
[root@hf-01 ~]# source !$        
source /etc/profile
    1. 在編輯完保存退出后,再source /etc/profile
    1. 這時候,在打開另一個終端
    • 執行echo $HISTTIMEFORMAT 會出現%Y/%m/%d %H:%M:%S
    • 這就表示執行成功,在其他終端下也生效了

命令歷史永久保存

  • chattr +a ~/.bash_history //增加隱藏權限,讓別人無法刪除
    • 增加權限后,就只能追加,而不能被刪除
[root@hf-01 ~]# chattr +a ~/.bash_history
[root@hf-01 ~]# 

在運行很多命令后,未正常退出(exit或logout正常退出),直接關閉終端,那剛剛敲的命令就不會完整的保存到 .bash_history 中去

  • !! 表示執行最后一條命令
  • !n 表示運行第幾條命令(n表示數字)
  • !echo 表示會在命令歷史里面,倒著網上找第一個執行以 echo 開頭的命令

轉載于:https://my.oschina.net/u/3707314/blog/1573774

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/454191.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/454191.shtml
英文地址,請注明出處:http://en.pswp.cn/news/454191.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用GCC生成無格式二進制文件(plain binary files)

使用C語言生成一個二進制文件 使用自己喜歡的文本編輯器寫一個test.c: int main() { } 再使用如下命令編譯: gcc –c test.c ld –o test –Ttext 0x0 –e main test.o objcopy –R .note –R .comment –S –O binary test test.bin 最后生成的二進…

TensorFlow 實例一:線性回歸模型

代碼 # -- encoding:utf-8 -- """ Create by ibf on 2018/5/6 """import numpy as np import tensorflow as tf# 1. 構造一個數據 np.random.seed(28) N 100 x np.linspace(0, 6, N) np.random.normal(loc0.0, scale2, sizeN) y 14 * x - …

python后端數據發送到前端_Python Django 前后端數據交互 之 后端向前端發送數據...

Django 從后臺往前臺傳遞數據時有多種方法可以實現。最簡單的后臺是這樣的:from django.shortcuts import renderdefmain_page(request):return render(request, ‘index.html‘)這個就是返回index.html的內容,但是如果要帶一些數據一起傳給前臺的話&…

Dapper的基本使用

Dapper是.NET下一個micro的ORM,它和Entity Framework或Nhibnate不同,屬于輕量級的,并且是半自動的。也就是說實體類都要自己寫。它沒有復雜的配置文件,一個單文件就可以了。給出官方地址。 http://code.google.com/p/dapper-dot-n…

函數名作為參數傳遞

假如不知道signal的函數原型,考慮child_handler函數的參數從哪里來? void child_handler(int sig) { if (sig SIGINT) kill(pid_parent, SIGUSR1); } int main(void) { ...... signal(SIGINT, child_handler); ...... } 1、…

易語言神經網絡驗證碼識別_遞歸神經網絡 GRU+CTC+CNN 教會驗證碼識別

利用 NLP 技術做簡單數據可視化分析Chat 簡介:用遞歸神經網絡采用端到端識別圖片文字,遞歸神經網絡大家最早用 RNN ,缺陷造成梯度消失問題;然后采用了 LSTM,解決 RNN 問題,并且大大提高準確率;現…

GCC 生成的符號表調試信息剖析

GCC把C語言源文件('.c')編譯成匯編語言文件('.s'),匯編器把匯編語言文件翻譯成目標文件('.o'),最后由鏈接器鏈…

《操作系統》OS學習(一):OS相關

清華大學操作系統OS(向勇、陳渝)視頻地址:http://www.xuetangx.com/courses/course-v1:TsinghuaX30240243Xsp/about 在ucore實驗中,一些基本的常用工具如下: 命令行shell: bash shell -- 有對文件和目錄操作的各種命令…

Android4.0藍牙使能的詳細解析

毫無疑問,bluetooth的打開是在Settings中進行的操作。因此,冤有頭,債有主,我們來到了Settings.java中,果然發現了相關的代碼如下: mBluetoothEnabler new BluetoothEnabler(context, new Switch(context));…

第一次沖刺

本人小組分工角色:產品負責人 本組沖刺訂單介紹:經過小組的成員討論,我們大概確立了一個沖刺的訂單是完成一個簡易的長沙學院網站項目。 最后完成情況概述:經過大約兩周的努力,我們組的編程人員運用python構建了一個簡…

移動端導出excel_連載系列【4】Excel開發移動端quot;APPquot;

前三篇文章介紹了百度地圖生成器、源代碼編輯器、GPS經緯度批量轉換工具、源代碼編輯器中添加自定義功能按鈕和地圖控件。這些寫好的Java Script代碼雖然可以實現所有期望的結果,但畢竟不是一個HTML文件,不便于傳播和使用,更無法變成一個類似…

《操作系統》OS學習(二):啟動、中斷、異常

Bootloader:加載OS。操作系統一開始是放在DISK(硬盤)中,并不是放在內存中。 BIOS:基本I/O處理系統。存放在ROMRead-Only Memory)只讀存儲中 BIOS(Basic Input/Output System)基本輸入輸出系統。…

[GCC for C]編譯選項---IDE掩蓋下的天空

編譯選項 ---------IDE掩蓋下的天空 /*************************************** * gcc for c language ***************************************/ Single Source to Executable $ gcc helloworld.c [-o howdy] 默認生成的名字a.exe ______________________________________ …

2016級算法第二次上機-F.ModricWang's Number Theory II

891 ModricWangs Number Theory II 思路 使得序列的最大公約數不為1,就是大于等于2,就是找到一個大于等于2的數,它能夠整除序列中的所有數。 考慮使得一個數d整除數組中所有數的代價: 如果一個數不能被b整除,那么可以花…

常用css屬性集(持續更新…)

禁止換行,超出部分顯示…:a. 代碼:.hide_word{ max-width: 100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; } b. 效果: 本文轉自 bilinyee博客,原文鏈接: http://blog.51cto.co…

parallels網絡初始化失敗_33 個神經網絡「煉丹」技巧

自然語言處理Andrej Karpathy 是深度學習計算機視覺領域、與領域的研究員。博士期間師從李飛飛。在讀博期間,兩次在谷歌實習,研究在 Youtube 視頻上的大規模特征學習,2015 年在 DeepMind 實習,研究深度強化學習。畢業后&#xff0…

《操作系統》OS學習(三):系統調用

例子 首先看一個標準C庫的例子:當我們程序中使用了C庫中的printf()函數,實際在底層是在內核態中調用了write()函數。圖中右側則是將程序代碼與C庫都算到應用程序中,內核提供了一個系統調用接口。 從這個例子我們可以得到以下幾點&#xff1a…

cygwin/gcc與MinGW

cygwin/gcc和MinGW都是gcc在windows下的編譯環境,但是它們有什么區別?在實際工作中如何選擇這兩種編譯器呢?cygwin/gcc完全可以和在linux下的gcc劃等號,這個從boost庫的劃分中就可以看出來端倪,cygwin下的gcc和linux下的gcc使用的是相同的T…

JavaScript服務器端開發技術(對象屬性的枚舉與查詢)

既然對象是屬性的集合,那么檢測與枚舉集合中的屬性就是一項重要任務。對此,我們來分別看一下ES3和ES5提供的解決方案。 1) ES3枚舉方案 示例代碼: var contacts{ ID:[0,1,2,3,4,5], names:["Zero","One","Two&q…

treelistview 所有節點失去焦點_垃圾詢盤過濾,焦點科技的 Milvus 實踐

文章作者:黎陽,焦點科技軟件開發工程師李成龍,Zilliz 數據工程師Milvus (https://milvus.io/) 向量搜索引擎開源半年以來,全球已經有數百家企業或組織用戶。焦點科技是一家以 B2B 外貿交易為主營業務的科技公司,也是 M…