Linux必知必会的基本命令和部署项目流程
Linux的基本命令
Linux下我們的輸入被以空格(個數不限)分割成多個部分(命令+參數),如果某個部分中自帶空格,需要使用引號引起來。
命令一般自帶幫助文檔,使用命令 --help查看。
命令的大多數選項都是-[字母]或 --[字母]。
Crtl+L實現清屏。
Crtl+C中斷命令的執行。
Tab自動補全命令/路徑。
查看當前用戶:
查看當前目錄:
查看當前目錄下的文件列表:
切換目錄:
mkdir新建目錄
rm刪除,-r刪除目錄
cp拷貝
mv移動文件夾/文件的位置,給文件/文件夾改名
Linux的文件系統
Linux的文件系統是以“樹形結構”進行組織的,和windows的主要區別是:
文本相關命令:cat,less,more,head,tail
如果cat,less,more,head,tail命令沒有帶文件路徑,則表示從標準輸入讀取文本內容,輸出到標準輸出中。
less:按空格鍵翻頁,按上下鍵進行滾動,按強行退出。
grep:進行文本匹配
man:manual比 --help更全面的介紹
進程間通信
進程和進程之間是相互獨立的,默認情況下是不能進行數據通信的。
通信方式:管道、網絡
管道的基本原理:
命令行中通過豎線|分割兩個命令實現管道
grep進行文本匹配
命令 [選項] 其他參數
如果要查詢-a,但是-a會被識別為選項,使用 --代表選項結束
windows上類似grep的命令:findstr
輸入/輸出重定向
輸入重定向:
命令 < 文件路徑(要求文件存在)
輸出重定向:
1.重新打開,丟棄原內容:命令 > 文件路徑(不要求文件存在,會自動創建文件)
2.追加模式: 命令 >> 文件路徑
錯誤重定向:
1.重新打開: 命令 2> 文件路徑
2.追加模式: 命令2>> 文件路徑
vim編輯器
yum:利用包管理工具進行軟件的安裝
yum list#查看所有軟件包,一般配合 | grep 、| less或者 > 一個文件來使用。 yum list|grep java安裝和卸載命令(要求具備管理員的權限):
yum install 包名 yum remove 包名當yum倉庫上的軟件版本不匹配或者沒有時,可以使用以下兩種方式進行安裝。
綠色安裝:直接解壓即可
源碼編譯安裝:一般不太建議,難度比較大。
項目的開發部署流程
前提準備
云服務器、XShell、Xftp
使用XShell連接云服務器,下載git、tomcat、jdk、maven、mariadb
將本地的tomcat安裝包使用Xftp上傳到云服務器上,解壓安裝即可。
安裝mariadb(同Mysql的使用)
yum install mariadb-server部署步驟
1.在gitee上創建倉庫
2. 在windows上,通過IDEAclone了gitee上的倉庫
3. 在windows上,修改倉庫代碼(添加pom.xml和代碼源文件)
4. 在windows上執行了git commit and push 把修改推送回gitee
5. 在Linux上,git clone了gitee的倉庫
6. 在Linux上,使用maven進行項目構建
如果需要修改代碼
7. 在Windows上修改倉庫代碼
8. 在Windows上執行了git commit and push把修改推送回gitee上
9. 在Linux上,git pull了gitee上的最新修改
10.在Linux上,使用maven進行項目構建 (在代碼的目錄下)
部署:
demo-…是你打好的包
重啟Tomcat:
在tomcat的bin目錄下執行(或使用絕對路徑):
驗證:可以直接使用包名進行訪問
瀏覽器中訪問:外網:8080/demo-/…
構建完后放入tomcat的目錄下
然后重新啟動tomcat
之后就可以訪問了
如果想要不加包名直接訪問,需要將打包好的包放入ROOT下然后重啟tomcat
http://49.232.218.156:8080/
監控需求
CPU:
ps : ps -elf 或 ps aux
top命令
內存:
top命令:可以查看動態的進程信息
q:退出 shift+p : 按照CPU從高到低進行排序 shift+m:按照內存從高到底進行排序
us+sy:表示CPU的總占有
id:表示空閑
僵尸進程:已經執行結束了但是數據還沒有來得及清理,可能其他進程還會用
load average:表示現在還有在等待的進程
網絡:
IO:
需要下載iostat:yum insatll sysstat
查看tomcat的日志排查問題:
tomcat/logs目錄下
總結
以上是生活随笔為你收集整理的Linux必知必会的基本命令和部署项目流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 投资收益属于
- 下一篇: find命令过滤 no such_运维老