Linux21個經常使用命令

1.文本搜索java

若是vi或vim打開一個很大的文件,不易查找到對應的內容。能夠用查找命令:python

末行模式下輸入"/關鍵字",輸入的關鍵字會高亮顯示,按"n"向下查找,按"N"向上查找。linux

2.vim恢復以及亂碼問題vim

(1)在vi或vim中誤刪了東西,想要恢復的方法:服務器

按ESC退出編輯模式,再按u鍵撤銷以前的修改內容。ssh

(2)在用vi或vim打開文件時,若是出現了特殊符號或是亂碼,能夠經過如下命令嘗試:ui

vim -b test.txt

(-b通常用來查看對應的二進制文件的)spa

3.管道命令,即豎槓--》'|'操作系統

將查詢出來的內容交給管道後面的命令裝飾以後再顯示出來命令行

常常跟grep(過濾)搭配使用,如:

1.cat -n test.txt|grep "123"    //顯示123所在行的所有內容

2.ps -ef | grep java;ps -aux | grep java  //查看java進程

4.grep命令

(1).顯示匹配的後n行 (after)

grep -A n

(2).顯示匹配的前n行(before)

grep -B n

(3).顯示匹配的先後n行(context)

grep -C n

(4).忽略大小寫

grep -i str

5.查看某文件被哪一個進程所佔用

lsof 文件名

6.查看python的版本

python -V

python --version

7.用戶和用戶組

useradd April           //建立用戶

groupadd Family      //建立用戶組

cat /etc/passwd        //查看全部用戶信息

cat /etc/shadow        //查看全部用戶的密碼信息

cat /etc/group           //查看全部用戶組信息

cat /etc/gshadow        //查看全部用戶組的密碼信息

8.find 搜索文件或目錄

find /home -name helloword*  //查找home目錄下名爲helloword開頭的文件或目錄

find / -name h?ll* 

find / -size +1000k    //查找根目錄下大於1000k的文件

find 查找效率比較低

查找命令還有:locate,whereis xxx

9.字符串替換命令

:s/well/good/            //替換當前行第一個well爲good

:s/well/good/g          //替換當前行全部well爲good

:n,$s/well/good/       //替換第n行開始到最後一行中每一行第一個well爲good

:n,$s/well/good/g      //替換第n行開始到最後一行中每一行全部well爲good

:.,$s/well/good/g      //替換當前行開始到最後一行中每一行全部well爲good

:%s/well/good/          //替換每一行的第一個well爲good

:g/well/s//good/          //同上

:%s/well/good/g         //替換每一行的全部well爲good

:g/well/s//good/g        //同上

轉義字符:可使用#爲分隔符,此時中間出現的/不會做爲分隔符

:s#well/#good/#          //替換當前行第一個well/爲good/

:%s#/usr/bin#/bin#g                               //把文件中全部路徑/usr/bin換成/bin

10.重定向命令

(1).標準的輸入控制

語法:命令 < 文件 //把文件做爲命令的輸入

如:mail -s "sendmail test" test@test.com < file1 //將文件file1當作信件的內容發送給。。。

(2).標準的輸出控制

①語法:命令 > 文件 //把命令執行結果輸出到文件中

如:

ls -l > list.txt                 //命令結果輸出到list.txt文件中

ls -l > list.txt                //命令結果輸出到list.txt文件中,list已經存在則覆蓋

②語法:命令 >& 文件 //將命令執行時屏幕上所產生的任何信息(標準輸出+標準錯誤輸出)寫入指定的文件中

如:

cc file1.c >& error    //將編譯file1.c 文件時所產生的任何信息寫入文件error 中。

小結:

'>' 會覆蓋原文件內容。

'》'語法同>,不覆蓋文件內容,將結果追加到文件中。

11.vi刪除行

命令行模式下執行:

dd:刪除光標所在行

ndd:刪除光標所在行的向下n行

190,6233d            //即[190,6233]都刪除掉

清空文件內容的幾種方法:

: > filename

  filename

 echo "" > filename

 echo > filename

 cat /dev/null > filename

12.vi定位行

命令行模式下輸入:

G:     //直接定位到最後一行

 1G:   //直接定位到第一行

 nG:    //直接定位到第n行

13.vi複製行

yy                 // 複製當前行

 nyy                // 從當前行開始複製n行

 p                    //粘貼

14.ll或ls顯示說明

ll -ht    //h表示安裝標準格式自動轉換大小,即:456M,1.2G;t表示顯示內容按照實際倒序排列

ls中文件顏色的意義:

藍色表明目錄

綠色表明可執行文件

紅色表明壓縮文件

淺藍色表明連接文件

灰色表明其餘文件

15.修改權限

將/home/April/lib文件夾及其裏面內容的全部者修改成April

chown -R April:April /home/April/lib

16.經常使用查看系統使用狀況的命令

(1)查看內存使用狀況:free -m (m是MB,g爲GB)

(2)查看磁盤使用狀況:df -lh

(3)查看cpu使用狀況:cat /proc/cpuinfo

cat /proc/cpuinfo | grep "model name"      //只顯示一行對應的cpu型號以及其餘信息

cat /proc/cpuinfo | grep "model name" | wc -l    //統計出一共有多少核

(4.1)查看當前操做系統發行版本信息:

cat /etc/issue

cat /etc/redhat-release

(4.2)查看當前操做系統更爲底層的信息

cat /proc/version

(5.1)查看某文件夾的空間使用狀況:du -h 文件夾名

(5.2)查看某文件夾內的全部文件的大小:du -sh * (先cd到當前文件夾)

17.查看端口鏈接狀態的連接數

(1) netstat -nlap

(2) netstat -nlap | grep -i est // grep -i 表示忽略大小寫,est表示 ESTABLISHED,只顯示鏈接狀態的端口,如圖

(3) netstat -nlap | grep -i est | grep -i 123 | awk '{print $4}' //awk '{print $4}'表示只打印第四列,如圖

(4) netstat -nlap | grep -i est | grep -i 123 | wc -l //統計數據,如圖

注:grep命令最後的那個顯示出來的結果以它進行標紅,如圖

圖片描述

18.同步服務器時間

利用ntpdate

再利用crontab將命令啓用爲定時執行腳本。

參考文章:https://www.zhihu.com/questio...

19.SSH登陸限制

(1) root用戶SSH登陸限制

vi /etc/ssh/sshd_config

 PermitRootLogin yes  //容許root用戶 SSH登陸

 PermitRootLogin no   //不容許root用戶 SSH登陸

(2)普通用戶的SSH登陸限制

vi /etc/ssh/sshd_config

 AllowUsers April     //如此設置後,只能用戶April 以SSH形式登陸,其餘用戶登陸不了

注:修改文件後,使用以下命令使其生效

service sshd reload

20.經常使用jdk系統環境變量配置

JAVA_HOME=/usr/java/jdk1.8

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$JAVA_HOME/bin:$PATH

21.查看linux的防火牆是否阻止80端口

iptables -vnL | grep ":80"

有內容返回說明開放了,無內容說明阻止了

相關文章
相關標籤/搜索