登錄服務器
ssh指定默認22端口:ssh 用戶名@ip地址:
ssh指定非默認22端口:ssh -p 端口號 root@ip地址:
grep查找
1、查找日志關鍵詞,個人喜歡用方法1
方法1:tail -f error.log | grep 'A'|grep 2017
方法2:grep -E "關鍵詞1 |關鍵詞2"? error.log
2、在多個文件中查找: grep '關鍵詞' 文件1 文件2 文件3
mv命令
移動文件:將a文件移動到b文件夾下的c文件夾:mv? a? b/c
覆蓋文件:
1)直接覆蓋已存在的文件:mv a.txt? b.txt(直接覆蓋b.txt,查看文件時只能看到a.txt)
2)對已存在的文件覆蓋前進行確認:mv a.txt -i b.txt(是否覆蓋b.txt?是的話寫 y)
重命名文件:將a.txt文件名稱改為b.txt:mv a.txt b.txt
復制文件
將a文件復制到b文件夾下的c文件夾:cp -r a b/c
創建一個文件:
1、vi? ? 會直接創建并打開一個文件a
vi a?
2、touch
touch的作用是更改一個文件或目錄的時間。touch a 如果a不存在,則創建空文件a
3、echo
echo “abcd” > c 可以直接創建文件c并將abcd寫入。
刪除文件
1.二次確認rm? -r a.txt
2.不用確認rm -rf a.txt
3.刪除包含內容的文件, 如刪除4月份的錯誤日志
rm -rf error.log.2017-04-*
4.以下這個我也是查看網上的,因為之前有碰到過,所以也記錄下:
1)刪除除了包含字符串aa外所有的文件夾
? ? ? ? rm -r `ls |grep -v "aa"`
如果是刪除文件,rm `ls |grep -v "aa"`
`ls | grep -v "aa" ` 記得外面是反引號(反引號的位置就在標準鍵盤的數字1的左邊),ls:查看當前目錄下所有的文件,使用grep命令過濾一下 grep -v "aa" 就是找出字符串中不帶“aa”的。
2)只想留下文件aa:
rm -r `ls | grep -v "^aa$" `
在aa前面加上^,后面加上$表示結束符的意思
清屏clear
本地文件上傳到服務器
1、本地系統為windows(除了以下方法外,也有其他方法)
運行 rz ,會自動打開一個Windows窗口,選擇你要上傳到服務器的文件,點擊確定。ls 看一下,這個文件已經在你的目錄下
2、本地系統為mac系統,打開終端,使用命令scp或者ftp
服務器端口號為22:scp 文件名稱 root@ip地址:
服務器端口號非22:scp -p 端口號 文件名稱 root@ip地址:
安裝包
1、獲取安裝包,如獲取maven安裝包:wget http://apache.fayea.com/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
2、解壓安裝包:tar -xvf?
某個端口占用了,如何定位是哪個進程占用
1)netstat -nltp? 當前端口占用的進程ID
2)ps -ef|grep 進程ID
? ? ? ps -ef|grep java ?查看java進程
3)kill -9? 進程id
4)然后再啟動這個進程
另外,也可以ps -ef|grep java或者ps -ef|grep tomcat
查看文件內容
cat? a.log? ? ? ? ? ? ? ? 或者more a.log
對文件的操作
編輯a文件:vi a.txt
對編輯的文件進行保存:? :x或者:wq
退出vi模式: (輸入q!, 不存盤強制退出vi) :q!
dd:刪除光標所在行(刪除某行,鼠標在某行)
復制某行內容,鼠標在某行,輸入yy
到指定的行,輸入p,粘貼
vi命令模式進去,點擊a或者i進入編輯模式,編輯完成后點esc,退回到命令模式
然后 如果要保存退出輸入:wq
不保存退出輸入:q!
查看數據庫內存和使用情況 ?df -hl
linux 如何顯示一個文件的某幾行(中間幾行)
【一】從第3000行開始,顯示1000行。即顯示3000~3999行
? ? ? ? ? cat filename | tail -n +3000 | head -n 1000?
【二】顯示1000行到3000行
? ? ? ? ? ?cat filename| head -n?3000?| tail -n +1000?*注意兩種方法的順序?
? ? ? ? ? 分解:??? tail -n 1000:顯示最后1000行???
? ? ? ? ? ? ? ? ? ? ? ? ?tail -n +1000:從1000行開始顯示,顯示1000行以后的??? head?-n 1000:顯示前面1000行?
【三】用sed命令??sed -n '5,10p' filename 這樣你就可以只查看文件的第5行到第10行。
linux查看文件的前100行:head -n 100 文件名
查看某目錄下包括有abc內容的php文件
grep -ra --include="*php" abc ./
或者find ./ -name "*.php" | xargs grep 'abc'
查詢某個文件中某個關鍵詞的前幾行,后幾行
cat a.log| grep abc -A4 // 含有abc的后4行
cat a.log| grep abc ?-B4 // 含有abc的前4行
grep -A 5 'parttern' filename //打印匹配行的后5行
grep -B 5 'parttern' filename //打印匹配行的前5行
grep -C 5 'parttern' filename //打印匹配行的前后5行
grep -5 'parttern' filename //打印匹配行的前后5行
其他相關命令:
tail -n 5 filename 查看文件最后5行內容
head -n 5 filename 查看文件前5行內容
sed -n '5,10p' 查看文件5-10行內容