Linux常用命令匯總(Centos7)


  • 1、關於Mysql數據庫常用命令:

#開啟mysql服務
service mysql start
 
#關閉mysql服務
service mysql stop
 
#啟動mysql數據庫
mysql -u root -p(回車后輸入前面的隨機密碼)
 
#設置mysql可以遠程連接
create user 'root'@'%' identified by '數據庫密碼';
grant all on *.* to 'root'@'%';
flush privileges;
 
#查看當前防火牆的狀態
firewall-cmd --state
 
#查看當前防火牆開放的端口
firewall-cmd --list-ports
 
#開放3306端口
firewall-cmd --permanent --add-port=3306/tcp
 
#重啟防火牆(修改配置后要重啟防火牆)
firewall-cmd --reload
 
#設置mysql開機自啟
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

2、關於tomcat部署軟件常用命令

       我的軟件是使打成了war包,然后放在了tomcat的webapps下面,由於當時開發是在windows下進行的,配置的log輸出路徑一般都是在D盤的xx路徑下,這次部署在Linux的tomcat下,找不到了日志的輸出位置,我在tomcat的logs里面找了半天也沒有我軟件的啟動日志,發現原來需要其他的方式來顯示出來,如下所示:

#首先切換到tomcat的logs文件夾下,下面的兩個操作都在這個目錄下進行
cd tomcat/logs/
 
#如果想要查看實時日志,可以輸入下面的命令
tail -f catalina.out
 
#如果想要查看全部日志,可以輸入下面的命令
vim catalina.out
 
#如果想要退出tail,可以輸入下面的命令
ctrl+c
 
#啟動tomcat服務的命令,進入到tomcat的bin目錄下,輸入
./startup.sh
 
#如果想要關閉tomcat的服務,進入到tomcat的bin目錄下,輸入
./shutdown.sh

3、關於端口號占用問題

  有時候會出現服務雖然關掉了,但是端口號還是被占用的問題;還有時候會出現服務端口占用的問題

#查看端口,輸入下面的命令會顯示所有占用的端口
netstat -anp
 
#查看端口對應的應用程序
lsof -i:端口號
 
#關閉端口,其中PID為進程號,當你輸入上面的命令時就會顯示出當前端口號所屬的PID是多少
kill -9 PID

4、常用文件操作命令

#普通用戶和root用戶之前切換,
su -
 
#編輯文件命令,然后輸入i即可編輯文件的內容
vim -文件名
vi -文件名
 
#編輯完成之后,按ESC命令跳轉到命令模式
:w 保存文件但不退出vi
:w file 將修改另外保存到file中,不退出vi
:w!   強制保存,不推出vi
:wq  保存文件並退出vi
:wq! 強制保存文件,並退出vi
:q  不保存文件,退出vi
:q! 不保存文件,強制退出vi
:e! 放棄所有修改,從上次保存文件開始再編輯
 
#刪除文件
rm -文件名
 
#刪除空的文件夾
rmdir 文件夾名
 
#文件移動
mv 原文件地址 新地址
 
#文件復制
cp 原文件地址 新地址
 
#顯示當前路徑
pwd
 
#創建一個新的目錄
mkdir 文件夾名
 
#判斷Linux系統是32位還是64位
getconf LONG_BIT

5、Linux樹型目錄結構

  在詳解常用命令之前,先對Linux的樹型目錄結構做個簡單的了解,如下所示:

簡單說明:

# /      #根目錄
# /bin   #基礎系統所需要的命令位於此目錄,是最小系統所需要的命令,如:ls, cp, cd等等。這個目錄中的文件都是可執行的,一般的用戶都可以使用。
# /dev   #設備文件,比如聲卡、磁盤、鼠標、鍵盤等。
# /etc  #系統管理和配置文件
# /etc/init.d   #啟動配置文件和腳本,可在這里添加啟動腳本。
# /etc/rc.local   #用戶添加啟動項
# /home  #用戶主目錄,比如用戶user的主目錄就是/home/user,可以用~user表示
# /lib   #標准程序設計庫存放路徑,又叫動態鏈接共享庫,作用類似windows里的.dll文件
# /sbin  #超級管理命令,這里存放的是系統管理員使用的管理程序。
# /tmp   #臨時文件目錄,有時用戶運行程序的時候,會產生臨時文件。 /tmp就用來存放臨時文件的。
# /root  #系統管理員的主目錄
# /mnt   #用來臨時掛載其他的文件系統
# /lost+found   #這個目錄平時是空的,系統意外崩潰或機器意外關機,而產生一些文件碎片放在這里。當系統啟動的過程中fsck工具會檢查這里,並修復已經損壞的文件系統。
# /media      #即插即用型存儲設備的掛載點自動在這個目錄下創建,比如USB盤系統自動掛載后,會在這個目錄下產生一個目錄 
# /proc  #虛擬文件目錄,可直接訪問這個目錄來獲取系統信息。
# /var   #所有服務的登錄文件或錯誤訊息檔案(log files)都在 /var/log 里面
# /boot  #包含Linux內核及系統引導程序所需要的文件,比如 vmlinuz initrd.img 文件都位於這個目錄中。在一 般情況下,GRUB或LILO系統引導管理器也位於這個目錄;
# /usr   #最龐大的目錄,要用到的應用程序和文件幾乎都在這個目錄,其中包含:
1  usr/bin     #眾多的應用程序
2  /usr/sbin     #超級用戶的一些管理程序
3  /usr/include  #Linux下開發和編譯應用程序所需要的頭文件
4  /usr/lib     #常用的動態鏈接庫
5  /usr/share/man  #幫助文檔
6  /usr/src     #源代碼,Linux內核的源代碼就放在/usr/src/Linux里
7  /usr/local/bin  #本地增加的命令
8  /usr/local/lib  #本地增加的庫根文件系統

 

. :代表當前路徑

.. :代表上一級目錄

~ :代表用戶目錄路徑

 

6、常用命令詳解

6.1 ls 命令

  ls是英文單詞list的縮寫.用來查看文件目錄的屬性。

  • 例如直接輸入ls按回車,查看根目錄的文件以及目錄。

  

6.1.1 ls -l命令

  • ls -­l  l參數代表以列表的方式顯示。

  

  • # 第一個字符d 代表這是一個目錄文件。
  • # ‐  代表普通文件
  • # c  字符設備文件
  • # b  塊設備文件
  • # p  管道文件
  • # l  鏈接文件
  • # s  socket文件
  • #后面的rwxr‐xr‐x字符,代表user、group、other對文件所擁有的權限,rwx代表該用戶擁有讀寫執行的權限。r‐x代表同一組的用戶擁有的讀和執行權限,后一個r‐x代表其他用戶擁有讀和執行權限。
  • # 2代表文件硬鏈接的計數,表示該文件有兩個硬鏈接。
  • # where文件所屬的用戶名。
  • # where文件所屬的用戶組。
  • # 4096 文件大小,單位字節。
  • # 6月 25 16:53  文件最后被修改的日期。
  • # Videos 文件名

6.1.2 ls -a命令

  • ls -a ­a參數代表all的意思,表示把所有的文件都羅列出來,包括隱藏文件,點號開頭的在Linux中都表示隱藏文件。

  

 

 

    ls ‐ld [filename] 代表只列出目錄文件的屬性。

6.2 stat命令 

  查看文件的訪問時間,修改時間等

  

訪問時間,是指通過指令如cat、vi等來查看的文件的最近一次時間。
更改時間,是指修改文件內容的最近一次時間。 改動時間,是指修改文件屬性的最近一次時間。 注意:訪問時間是內容更改后,第一次訪問的時間,后面再次訪問的時候訪問時間不會改變

 

6.3 cd命令

  cd是change directory的縮寫,表示改變當前所在路徑。

  

 

 

6.4 pwd命令

  pwd 是英文print working directory 顯示當前所在路徑。

  

6.5 which命令

  尋找可執行文件 ,並在PATH環境變量里面尋找

  

6.6 touch命令 

  將每個文件的訪問及修改時間都更新為目前的時間。如果文件不存在,則創建一個字節數為0的文件。

‐a           #只更新訪問時間,不改變修改時間
‐c           #不創建不存在的文件
‐m           #只更新修改時間,不改變訪問時間
‐r file      #使用文件file的時間更新文件的時間
‐t           #將時間修改為參數指定的日期,如:07081556代表7月8號15點56分

 

  

6.7 mkdir 命令

  mkdir 是make directory的英文縮寫。創建目錄DIRECTORY,可以一次創建多個。OPTION如果是­p,表示可以連同父目錄一起創建。

  

6.8 rmdir 命令 

  rmdir是remove directory的英文縮寫。

  

 

 

   刪除空目錄,可以一次刪除多個。OPTION如果是­p,表示可以連同空的父目錄一起刪除。但是一旦父目錄中還包含其他文件,則刪除失敗。

6.9 rm 命令 

rm是remove的英文縮寫。

可以用來刪除普通文件,也可以用來刪除目錄,特別用來刪除目錄中嵌套有子目錄的目錄文件。
常用參數:
‐f  ‐‐force  #強制刪除,不詢問是否要刪除。
‐r  ‐‐recursive  #遞歸刪除,包括文件夾中的內容。

 

6.10 mv命令

mv是英文單詞move的縮寫。可以用來移動文件夾或者文件,也可以用來更改文件名。

mv file / #把文件file移動到根目錄中
mv file file_bak #把文件file重命名為file_bak。

 

6.11 cp命令

cp是英文單詞copy的縮寫,表示拷貝文件。

可以用來拷貝普通文件:cp file file_bak #拷貝一份file為file_bak
可以用來拷貝目錄:cp dir dir_bak ‐r #拷貝一個目錄dir為dir_bak, ‐r參數代表遞歸拷貝,把dir目錄中的文件也拷貝過去

 

6.12 cat命令

cat英文單詞concatenate連鎖的縮寫,用來查看文件內容,以及將幾個文件連成一個文件,

  • 不填文件參數,默認的情況下是從標准輸入中獲取內容: 

  • 查看文件: cat fileName

  • 將文件file1 file2連成file3文件
cat file1 file2 > file3

 

6.13 more命令 

more 是我們最常用的工具之一,最常用的就是顯示輸出的內容,然后根據窗口的大小進行分頁顯示,並且提示文件的百分比。

參數如下

+num    #從第num行開始顯示;
‐num    #定義每屏顯示num行;

打開之后的動作:

6.14 less命令

less工具也是對文件或其它輸出進行分頁顯示的工具

參數如下:

‐f    #強制打開文件,二進制文件顯示時,不提示警告;
‐N    #在每行前輸出行號;

打開之后的動作:

6.15 locate 命令 

全盤尋找文件,文件名部分匹配,只要有包含該字符串的都羅列出來,這個指令查找速度很快,它需要一個數據庫,這個數據庫由每天的例行工作(crontab)程序來更新。當我們建立好這個數據庫后,就可以方便地來搜尋所需文件了。馬上創建的文件沒辦法使用locate查找到:如果想馬上更新可以使用一下指令:updatedb

6.16 find 命令

直接在全文件系統上搜尋,功能強大,速度慢。

格式:

find [path] [‐option] [ ‐print ‐exec ‐ok command ] {} \;

path:   #要執行查找的目錄。
‐option: #查找的具體方法。
‐print: #find命令將匹配的文件輸出到標准輸出。
‐exec:  #find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式為'command' {} \;,注意{}和\;之間的空格。
‐ok:    #和‐exec的作用相同,只不過以一種更為安全的模式來執行該參數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓用戶來確定是否執行。

 

find / ‐name filename   #在根目錄里面搜索文件名為filename的文件
find /etc ‐name *s*     #在目錄里面搜索帶有s的文件
find /etc ‐name *S      #在目錄里面搜索以s結尾的文件
find /etc ‐name s*      #在目錄里面搜索以s開頭的文件
find / ‐amin ‐10        #在系統中搜索最后10分鍾訪問的文件
find / ‐atime ‐2        #查找在系統中最后48小時訪問的文件
find / ‐mmin ‐5         #查找在系統中最后5分鍾修改過的文件
find / ‐mtime ‐1        #查找在系統中最后24小時修改過的文件
find / ‐ctime ‐1        #查找在系統中最后24小時被改變狀態的文件
find / ‐user username   #查找在系統中屬於用戶username的文件
find / ‐group groupname  #groupname 查找在系統中屬於groupname的文件
find / ‐empty           #查找在系統中為空的文件或者是文件夾
find / ‐inum 3          #查找inode號為3的文件
find / ‐type d          #查找為文件類型為文件夾的文件d為文件夾
                                f     #普通文件
                                d     #目錄文件
                                l     #鏈接文件
                                b     #塊設備文件
                                c     #字符設備文件
                                p     #管道文件
                                s     #socket文件

6.17 grep 命令

搜索內容中是否包含指定的字符串,並打印出該行。

常用參數有:

‐i    ‐‐ignore‐case   #忽略字符大小寫的差別。
‐v                    #輸出沒有指定字符串的文件
‐c                    #只輸出匹配行的計數。
‐R                    #連同子目錄中所有文件一起查找。

 

6.18 ln命令

ln是英文單詞link的縮寫,用來創建鏈接的命令。
   Linux鏈接分兩種,一種被稱為硬鏈接(Hard Link),另一種被稱為符號鏈接(Symbolic Link)。默認情況下,ln命令產生硬鏈接。
【硬鏈接】
   硬鏈接指通過索引節點來進行鏈接。在Linux的文件系統中,保存在磁盤分區中的文件不管是什么類型都給它分配一個編號,稱為索引節點號(Inode Index)。在Linux中,多個文件名指向同一索引節點,一般這種鏈接就是硬鏈接。

   硬鏈接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬鏈接到重要文件,以防止“誤刪”。
   如果有多個硬鏈接,只刪除一個鏈接並不影響本身和其它的鏈接,只有當最后一個鏈接被刪除后,文件的才會被正在刪除。也就是說,文件真正刪除的條件是與之相關的所有硬鏈接文件均被刪除。
【軟鏈接】
   另外一種鏈接稱之為符號鏈接(Symbolic Link),也叫軟鏈接。軟鏈接文件有類似於Windows的快捷方式。它實際上是一個特殊的文件。符號鏈接文件實際上是一個文本文件,其中包含的有另一文件的位置信息。

  • 給flie文件創建一個硬鏈接
    touch file
    ln file file_hard
  • 給file文件創建一個軟鏈接
    touch file
    ln ‐s file flie_soft

    注意: 軟鏈接的時候盡量使用絕對路徑,避免由於鏈接文件移動后,造成文件失效。

6.19 wc 命令

Linux系統中的wc為英文Word Count的縮寫,命令的功能為統計指定文件中的字節數、字數、行數,並將統計結果顯示輸出。 

  • 命令功能:

統計指定文件中的字節數、字數、行數,並將統計結果顯示輸出。如果沒有給出文件名,則從標准輸入讀取。wc同時也給出所指定文件的總統計數。

  • 命令參數:
‐c #統計字節數。 
‐l #統計行數。 
‐m #統計字符數。這個標志不能與 ‐c 標志一起使用。 
‐w #統計字數。一個字被定義為由空白、跳格或換行字符分隔的字符串。 
‐L #打印最長行的長度。 

6.20 od命令 

od是英文octal dump的縮寫,功能是把文件用8進制或者其他的格式顯示出來,通常用於查看特殊格式文件的內容,可以用來查看不可見字符。

6.21 du命令

du是英文Disk usage的縮寫,表示計算某個目錄在硬盤中所占的空間大小,默認情況下以kb為單位。通過遞歸統計每一個目錄中所占用的空間大小。

常用參數如下:

6.22 df命令

df是英文Disk free的縮寫,用來統計磁盤的使用情況。

6.23 gedit命令 

gedit全稱 GNU edit 是一個文本編輯器,類似windows里面的txt文本編輯器。編輯file文本。

6.24 管道命令

用法: command 1 | command 2 他的功能是把第一個命令command 1執行的結果作為command 2的輸入。管道命令操作符是:”|”它只能處理經由前面一個指令傳出的正確輸出信息,對錯誤信息信息沒有直接處理能力.

6.25 重定向 

在shell中,標准輸入是0,標准輸出是1,標准錯誤是2。使用>表示重定向。1>表示標准輸出重定向,2>表示標准錯誤重定向。默認情況下>表示輸出重定向。

例如:

ls > list.txt   #ls的輸出重定向到文件list.txt中。                     
find / ‐name "*.c" 2>/dev/null  #標准錯誤重定向到無底洞文件。     
find / ‐name "*.c" 2>/dev/null  #標准錯誤重定向到無底洞文件。     
find / ‐name "*.c" >/dev/null 2>&1  #標准輸出、標准錯誤重定向到無底洞文件。

 

6.26 后台運行

Linux中可以使用&,讓程序在后台運行。如:cat &

6.27 awk命令

awk就是把文件逐行的讀入,以空格為默認分隔符將每行切開,切開的部分再進行各種分析處理。

格式:awk [‐F field‐separator] 'commands' [input‐file(s)]

其中,commands 是真正awk命令,[­F 域分隔符]是可選的。 input­file(s) 是待處理的文件。print 是awk打印指定內容的主要命令, $1 分割出來的第一段,$2分割出來的第二段,依次類推,$0代表所有字段。
例如:

ls ‐l | awk '{print $1 "\t" $2 "\t" $3 "\t" $4}'

將/proc/meminfo文件中的字段提取出來,並且在每個字段前面添加meminfo:

awk ‐F ':' '{print "meminfo:" $1}' /proc/meminfo


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM