1. 程式人生 > >[置頂]Linux碎碎念

[置頂]Linux碎碎念

在學習Linux過程中,有許多有用的小技巧。如果放在紙質的筆記本上,平時查閱會相當不方便。現在以一種“碎碎念”的方式,彙集整理在此,目前還不是很多,但隨著學習、工作的深入,後續會陸陸續續新增更多的小技巧。

1. 配置ssh的等效性

    ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]  

    這樣id_rsa.pub可以直接新增到/home/oracle下的.ssh/authorized_keys

    也可直接為ssh-copy-id [email protected],會預設copy當前目錄下的id_rsa.pub檔案

2. 檢視指令碼的執行過程

     sh -x ping.sh

3. 禁止遠端ssh到本地的root使用者

     vim /etc/ssh/sshd_config

     #PermitRootLogin yes  改為PermitRootLogin no

4. 安全設定

     vim /etc/profile

      TMOUT=10    -->>10s 沒有輸入,則自動登出

      HISTFILESIZE=0  -->>不顯示以前登入的history操作

5. 命令列修改密碼

     echo 123 | passwd --stdin aaa

6. 時間同步

     ntpdate 0.rhel.pool.ntp.org

7. 呼叫圖形計算器

     gnome-calculator

8. 檢視Linux系統版本

     cat /etc/redhat-release

9. 修改ssh的預設埠

      vim /etc/ssh/sshd_config

      port 21785

10. 私有IP網段

      Class A: 10.0.0.0~10.255.255.255

      Class B: 172.16.0.0~172.31.255.255

      Class C:192.168.0.0~192.168.255.255

11. basename 

      去除目錄和字尾,只顯示檔名

      語法:basename NAME [SUFFIX]

      舉例:

             basename /usr/bin/sort
             Output "sort".

             basename include/stdio.h .h
             Output "stdio".

12. 如何修改網絡卡的名字

     1> vim /etc/udev/rules.d/70-persistent-net.rules

     2> start_udev

13. yum

     在用yum解除安裝軟體時,有時會報以下錯誤:

     Error: Cannot retrieve repository metadata (repomd.xml) for repository: InstallMedia. Please verify its path and try again
     You could try using --skip-broken to work around the problem
     You could try running: rpm -Va --nofiles --nodigest

     解決方法:

     rm -rf /etc/yum.repos.d/packagekit-media.repo即可

14. 檢視當前目錄檔案大小

      du -sm *   

      如果需要排序,可用如下命令:du -sm * | sort -r -n  -->>從大到小排序

15. shell中如何將檔案檔案中每一行提取出來

      cat 123.txt | while read line
      do
      echo "$line"
      done

      如果迴圈語句內部有賦值,則該值並不能傳遞給當前指令碼的變數,因為這裡用了管道。倘若需要傳遞給外部變數,則需用如下方式:

      while read line
      do
      echo "$line"
      done < 123.txt

16. vim全部替換命令

     全域性替換命令為::%s/源字串/目的字串/g

     其中:% 表示整個檔案,同“1,$”;s 表示替換操作;g 表示全域性替換;

     源字串和目的字串中不能包含分隔符,否則,會產生歧義。在這種情況下,可用反斜槓'\'進行轉義。

     如果這兩個字串中的斜槓非常多,比如"file:///usr/share/man/man1/vim.1.gz",那麼對每個斜槓進行轉義就顯得很麻煩。為此人們想到了一個解決辦法,就是可以

     使用其他字元作為分隔符(總是將作為替換命令代表的's'後的第一個字元作為分隔符)。例如使用'+'做分隔符時,上述命令就可以寫成:%s+源字串+目的字串+g

17. 如何開啟tar檔案

      2> 解壓縮   tar xvf rarlinux-3.9.0.tar.gz

      3> 切換到資料夾 cd rar

      4> 編譯 make

      rar x human_resources.rar   x指的是Extract files with full path

      以上命令需在root賬戶下執行。

18. 如何將檔案打包成rar格式的壓縮檔案

      rar a ulcase.rar archive ulcase/*

      a代表Add files to archive

      ulcase.rar是壓縮後的檔名

      archive代表打包

      ulcase/*是希望打包的檔案

19. 如何查詢命令所屬的檔名

     [[email protected] ~]$ rpm -qf `which vim`
     vim-enhanced-7.2.411-1.8.el6.i686

20. grep多個字元匹配

      grep -E "word1|word2|word3"   file.txt

22. awk指定多個分隔符

      grep  -E "create table|primary key \(" provision.sql |awk -F '[. ]' '{print $NF}' 

      df -h |awk -F'[ %]*' '{if($6=="/home")print $5}'   -->>檢視/home目錄的磁碟使用率(注意,-F'[ %]*' 要帶上)

23. 擷取IP地址     

      ifconfig |awk -F'[: ]+' 'NR==2{print $4}'
      192.168.2.13

24. shell 字串處理彙總

25. sed刪除1-3行,空格行,最後一行

      sed -i '/^$/d;1,3d;$d' file1

26. sed和awk顯示最後一行

      sed -n '$p'

      awk 'END{print}'

27. Xshell註冊碼

      Xshell4.0  690313-111999-999313

      Xmanager4.0 101210-450789-147200

28. 如何修改使用者的屬組

      usermod -g oinstall -G dba,asmdba,oper oracle

29. 圖形配置服務開機命令

      ntsysv

30. vim搜尋關鍵詞高亮顯示

     :set hls

31. rarlinux下載地址

     解壓命令:

     rar e shell.rar    -- e代表Extract files without archived paths

     rar x shell.rar    -- x代表Extract files with full path

32. echo

     \b:退格

     \c:忽略echo最後預設的換行符,同時忽略\c後的字元

[[email protected] ~]# echo -e "hello\bworld"
hellworld
[[email protected] ~]# echo -e "hello\cworld"
hello[[email protected] ~]# echo "hello\bworld"
hello\bworld

      注意:echo後面要帶上-e選項,表示enable interpretation of backslash escapes,預設是不支援轉義符。

33.  如何利用ll命令按照檔案大小排序

      ll -Sh  其中-S sort  by file size     -h, --human-readable  with -l, print sizes in human readable format (e.g., 1K 234M 2G)

      這是按照從大到小排序

      如果要從小到大排序,加個-r,即ll -Shr

34. 如何檢視檔案是否是硬連結

[[email protected] test]# touch 1
[[email protected] test]# ll
total 0
-rw-r--r--. 1 root root 0 Mar  5 22:26 1
[[email protected] test]# touch 2
[[email protected] test]# ll
total 0
-rw-r--r--. 1 root root 0 Mar  5 22:26 1
-rw-r--r--. 1 root root 0 Mar  5 22:26 2
[[email protected] test]# ln 1 3    -->>建立硬連結。注意, 硬連結和原檔案是無法區分的. 所以3是1的硬連結,也可以看作1是3的硬連結
[[email protected] test]# ll  -->> 第二列指的是指向該檔案的硬連結數,該數字大於或等於2,說明該檔案是硬連結檔案
total 0
-rw-r--r--. 2 root root 0 Mar  5 22:26 1
-rw-r--r--. 1 root root 0 Mar  5 22:26 2
-rw-r--r--. 2 root root 0 Mar  5 22:26 3
[[email protected] test]# ln 3 4
[[email protected] test]# ll -i  -->> 檢視檔案的inode number
total 0
174442 -rw-r--r--. 3 root root 0 Mar  5 22:26 1
174445 -rw-r--r--. 1 root root 0 Mar  5 22:26 2
174442 -rw-r--r--. 3 root root 0 Mar  5 22:26 3
174442 -rw-r--r--. 3 root root 0 Mar  5 22:26 4
[[email protected] test]# find -inum 174442  -->> 通過inode number查詢所有硬連結某個檔案的所有檔案
./1
./3
./4

35. 顯示時間

     date +%Y%m%d

36. 如何退出startx

     Ctrl+Alt+Backspace

37. IPC

     Inter-Process Communication,程序間通訊

     ipcs是檢視程序間通訊的資訊,ipcs -m是檢視的是shared memory segments的資訊

38. 如何檢視Linux的block size

      tune2fs -l /dev/sda1 |grep 'Block size'

39. 如何檢視RHEL的發行版本

     cat /etc/redhat-release 

40. Xshell下如何遷移連線資訊

      在XShel中,每個儲存的Session連線資訊都是儲存到.xsh(就是ini檔案,可以用文字編輯器開啟)檔案中的。它的預設路徑是

      "%APPDATA%\NetSarang\Xshell\Sessions"

      即:C:\Users\使用者名稱\AppData\Roaming\NetSarang\Xshell\Sessions

      可直接拷貝這些xsh檔案到新的xshell的相同目錄即可使用。

41. VMware如何進入BIOS

      1> 首先關閉Vmware中的系統,開啟虛擬機器配置檔案(.vmx檔案),該檔案位於所安裝的虛擬機器目錄(不是虛擬機器軟體目錄),在最前面中加入一行                               bios.forceSetupOnce = "TRUE",開機就自動進入BIOS!不過VMware啟動後,會將該引數由TRUE變為FALSE,如果您還要繼續使用BIOS,就再手動改成TRUE            即可

      2> 延長啟動畫面時間。在最前面加入:bios.bootDelay = "5000";5000為5秒。

42. 如何關閉SELinux

     檢視:sestatus

     臨時關閉:setenforce 0

     永久關閉: 修改/etc/sysconfig/selinux檔案 

43. 如何用wath命令監控結果的輸出

     watch -n 10 -d 'ls -l boss28 |wc -l'

     檢視boss28目錄下的生成的檔案數

     其中-n 10指的是以10s為時間間隔進行結果輸出,-d後面接的是命令,因為用了管道,故用單引號引起來

44. 如何刪除環境變數

      unset 變數名

45. 如何刪除除特定檔案外的其它檔案

     ls | grep -v .xml | xargs rm -rf

     該條語句即是刪除當前目錄下除xml檔案外的其它檔案

46. Minimal安裝後,ifconfig命令未安裝,那麼如何檢視ip地址呢?

     ip addr 

47.  yumdownloader

     用法:yumdownloader 包名

     注意:yumdownloader本身是yum-utils包安裝的。

[[email protected] ~]# rpm -qf `which yumdownloader`
yum-utils-1.1.30-14.el6.noarch

48. 如何使用指定的yum源

     yum --disablerepo=\* --enablerepo=BASE list

49. RHEL7中如何修改主機名

      # vim /etc/hostname 

50. Firefox is already running, but is not responding. To open a new window, you must first close the existing Firefox process, or restart your system

      在linux的終端輸入:firefox -profilemanager

      回車後會出現一個小視窗讓你選擇使用哪個 profile 來啟動 firefox。首先將當前出錯的Profile刪除掉,然後新建個即可。

51. 關於iptables,可參考

52. CentOS右鍵沒有“開啟終端”選項

      yum -y install nautilus-open-terminal

      重啟伺服器

53. VIM如何搜尋上一個匹配

      ?pattern 向上搜尋 #繼續搜尋上一個

54. 遞迴的查詢內容

      grep -r "LASTHOSTPROBLEMID" /usr/local/icinga/  

      查詢/usr/local/icinga/目錄下含有LASTHOSTPROBLEMID的檔案,如果只是輸出檔名,則另需加-l引數。

      grep -lr "LASTHOSTPROBLEMID" /usr/local/icinga/

55. RHEL7下如何關閉防火牆

      service firewalld stop

      systemctl disable firewalld

56. vim刪除多行

     :1,10d

57. 如何載入庫

     ldconfig 

相關推薦

[]Linux

在學習Linux過程中,有許多有用的小技巧。如果放在紙質的筆記本上,平時查閱會相當不方便。現在以一種“碎碎念”的方式,彙集整理在此,目前還不是很多,但隨著學習、工作的深入,後續會陸陸續續新增更多的小技巧。 1. 配置ssh的等效性     ssh-copy-id -i /ro

[]linux系列目錄

firewall www less 系列 置頂 tle htm mv命令 oca 一:linux系列部分    linux系列(一):ls命令   linux系列(二):cd命令   linux系列(三):pwd命令   linux系列

[]Shell

1. 字串如何大小寫轉換 str="This is a Bash Shell script." 1> tr方式      newstr=`tr '[A-Z]' '[a-z]' <<<"$str"`或者 newstr=$(echo $str |tr '[

Linux 檔案目錄——

這一年的開始系統的學習計算機,可以說Linux 是接觸最多的,抽空補一下知識點吧!!! 檔案概述  與Windows 將硬碟看做“C盤”,“D盤”,幾個獨立的分割槽不同,Linux 將整個檔案系統看作是一顆樹,這棵樹的樹根叫做根檔案系統,用 / 表示。各個分割槽通過mount 以檔

項目管理系列之一:幹系人管理

關系 mbo ans con lock iar odi 所在 alt 初次見到“項目幹系人”這個詞,我是有點蒙圈的,因為這不太符合中文平時的表達。 其實所謂“項目幹系人”,英文稱作“Project Stakeholder”,翻譯成利益相關者,對其含義就一目了然

ava 自己 來講 ont 保存 。。 朋友 的人 無用功 我想我應該停下來,總結一下這開學兩個月半以來,自己所經歷的事情和我所有的心情。以前的時候心情不好的時候就會發在微博上,因為感覺微博上自己認識的身邊的人很少,我可以毫無忌憚的發泄自己的情緒,或者說是對一些人掩蓋一下糟

CAP

cluster 請求響應 watermark ear mar 部署 doc 性能 生成報表 整個2017年都在搞大數據平臺,完全遠離了機器學習,甚至都不記得寫過類似ETL的job。 從數據到平臺,從業務處理到基礎服務。 Metrics的收集,報警,生成報表。Data pip

一個十二年老程序猿的h5牛牛程序出售

存儲 自然 第一個 進修 為我 計劃 朋友 不知道 acl 我是一名程序猿,在上95年上初中的時候h5牛牛程序出售(http://h5.hxforum.com) 聯系方式170618633533企鵝2952777280 源碼出售 房卡出售 後臺出租有意者私聊扣扣,別的還在

2018第一篇

繼續 技術文章 能說 很多 leader 沒有 要花 註冊 一次 不知不覺博客園都註冊了3年多了,但實際做技術並沒有這麽久。 2016年大三下學期,老師的推薦意外在武漢接觸到前端,現在想起來我還是我們班上最早接觸到前端的人,而如今一晃,轉眼間接觸前端也算2

crawler5 豆瓣爬取操作之登錄練習

保存 網頁 utf 程序 val with open 平臺 xxxxxxxx edi import requests import html5lib import re from bs4 import BeautifulSoup s = requests.Sess

201808

  換了三家公司,到了一家半,人生咋個這麼艱辛。 入職的第二週,很充實。第一週,爬蟲看的我七葷八素,不過至少反爬蟲不是很犀利的網站資料都可以嘗試爬一下吧。這麼剛剛還把證監會上面銀行的資料爬了下來。   這樣的充實很難說是一種自我滿足,畢竟做的事情和我之前的有差距,和我的興趣有偏離。但

crawler6 豆瓣爬取操作之獲取資料

import requests from lxml import etree   s = requests.Session() for id in range(0,251,25):   url ='https://movie.douban.com/top250/?start-'+str(i

2017/2/13的

從開始工作到現在,已經過去了一年半,近期想轉行,遂記下這一年半的時間裡的各種碎碎。 說實話一年半里專業水平在專案中提升不是很多,由於業務強烈依賴高通,好多內容對新手來說不是很容易上手,摻雜了很多底層知識。公司裡的培訓相對又較少,造成自己對業務無法形成系統性的認知,也基本沒有

資料的範圍

實際上該篇文章的定位還是蠻高的,就像計算機網路中的特殊地址一樣,是不是幾乎每年必考?在計算機組成這門課裡,資料的範圍通常會以小題的形式考察,但不排除例外,2017年408真題簡直重新整理了我的三觀,原來資料如此有趣!這是2019年,表示考408的我有點惶恐。。 首先,我覺得有必要說明幾個概念:

演算法提高 分分鐘的

問題描述   以前有個孩子,他分分鐘都在碎碎念。不過,他的念頭之間是有因果關係的。他會在本子裡記錄每一個念頭,並用箭頭畫出這個念頭的來源於之前的哪一個念頭。翻開這個本子,你一定會被互相穿梭的箭頭給攪暈

2018icpc南京站

    直接說結果吧,一題滾粗,全場倒數,相當悽慘。     時間軸拉遠一點,從選賽區開始說起吧。在八月初從camp回來時開始考慮選賽區,我的意見是有兩個站絕對不打——吉林和焦作,前者是因為太早,只有不到兩個月的準備時間,而自己還那麼菜,好多技能都沒點亮,去了不是送死嗎

DataTables-初始化一個常用的DataTables

ajax請求,動態分頁 $('#activity_statistics_list_table').DataTable( { lan

ACM 退役

恩,到今年所有東西寫的都還是ACM-ICPC 從去年開始,我們就一路踩線前進,一直到現在 不過一切都結束了 ---------------------------------- 記錄一下ACM的全過程吧 2016/1~2 ICPC Camp 當時和yjz csl組隊去打ICPC Camp,我熱身

日常——程式設計師的身體健康問題

       最近公司組織體檢,雖說可能是不太嚴謹的,但是基本的身體問題也是可以看出來的。聯絡到最近的事件,真的感覺生命很重要,要珍惜眼前的點點滴滴,熱愛生命。程式設計師這個工作就是高薪且普遍加班,很少運動,導致身體健康問題的出現甚至是猝死事件的發生。每每看到這些事情,都會告

android eMMC【轉】

本文轉載自:https://blog.csdn.net/Fybon/article/details/44242549 一、/dev/block[email protected]:/dev/block #lsbootdevicemmcblk0mmcblk0p1mmcblk0p10…….mmcblk0