做爲一個Java開發人員,有些經常使用的Linux命令必須掌握。即便平時開發過程當中不使用Linux(Unix)或者mac系統,也須要熟練掌握Linux命令。由於不少服務器上都是Linux系統。因此,要和服務器機器交互,就要經過shell命令。java
本文並不會對全部命令進行詳細講解,只給出常見用法和解釋。具體用法可使用--help查看幫助或者直接經過google搜索學習。git
必會Linux命令清單spring
查找文件shell
find / -name filename.txt
根據名稱查找/目錄下的filename.txt文件。tomcat
find . -name "*.xml"
遞歸查找全部的xml文件服務器
find . -name "*" |xargs grep "hello"
遞歸查找全部文件內容中包含hello world的xml文件網絡
grep -H 'spring' *.xml
查找因此有的包含spring的xml文件ssh
find ./ -size 0 | xargs rm -f &
刪除文件大小爲零的文件curl
ls -l | grep '.jar'
查找當前目錄中的全部jar文件maven
grep 'test' d*
顯示全部以d開頭的文件中包含test的行。
grep 'test' aa bb cc
顯示在aa,bb,cc文件中匹配test的行。
grep '[a-z]\{5\}' aa
顯示全部包含每一個字符串至少有5個連續小寫字符的字符串的行。
查看一個程序是否運行
ps –ef|grep tomcat
查看全部有關tomcat的進程
ps -ef|grep --color java
高亮要查詢的關鍵字
終止進程
kill -9 19979
終止線程號位19979的進程
查看文件,包含隱藏文件
ls -al
當前工做目錄
pwd
複製文件
cp source dest
複製文件
cp -r sourceFolder targetFolder
遞歸複製整個文件夾
scp sourecFile name@ip:addr
遠程拷貝
建立目錄
mkdir newfolder
刪除目錄
rmdir deleteEmptyFolder
刪除空目錄
rm -rf deleteFile
遞歸刪除目錄中全部內容
移動文件
mv /temp/movefile /targetFolder
重命名
mv oldNameFile newNameFile
切換用戶
su -username
修改文件權限
chmod 777 file.java
file.java的權限-rwxrwxrwx,r表示讀、w表示寫、x表示可執行
壓縮文件
tar -czf test.tar.gz /test1 /test2
列出壓縮文件列表
tar -tzf test.tar.gz
解壓文件
tar -xvzf test.tar.gz
查看文件前10行
head -n 10 example.txt
查看文件後10行
tail -n 10 example.txt
查看日誌最近更新
tail -f exmaple.log
這個命令會自動顯示新增內容,屏幕只顯示10行內容的(可設置)。
使用超級管理員身份執行命令
sudo rm a.txt
使用管理員身份刪除文件
查看端口占用狀況
netstat -tln | grep 8080
查看端口8080的使用狀況
查看端口屬於哪一個進程
lsof -i :8080
查看進程
ps aux|grep java
查看java進程
ps aux
查看全部進程
以樹狀格式列出目錄
tree a
PS:Mac下使用tree命令
文件下載
wget http://file.tgz
PS :Mac下安裝wget命令
curl http://file.tgz
網絡檢測
ping www.just-ping.com
遠程登陸
ssh userName@ip
打印信息
echo $JAVA_HOME
打印java home環境變量的值
Java經常使用命令
java
javac
其餘命令
svn
git
maven
Linux命令學習網站
http://explainshell.com/