Linux常用命令大全(史無前例的命令大全)
一. linux常用命令
***************************************************
1.覆蓋拷貝命令
cp -ri
2. a拷貝到b目錄(移動或重新命名)
#mv a b
mv - move (rename) files
如果b目錄存在則a檔案或目錄會移動到b目錄下,如果b目錄不存在,則a會重新命名為b檔案或目錄
3.修改伺服器編碼
vim /etc/sysconfig/i18n
vim /etc/profile
4.檢視伺服器編碼:
locale;
5.輸出日誌啟動服務:
../startup.sh ; tail -f ../logs/catalina.out
6.清空檔案三種方法
method1:
#cat /dev/null > abc.txt
method2:
#cat "" > abc.txt
method3:
#> abc.txt
7.tar壓縮、解壓
壓縮:
tar zcvf member.qz.0309.tar.gz member.china.root.qz
解壓到當前目錄:
tar zxvf jsp_simexam.tar.gz
解壓.bz2檔案
bunzip2 x264-snapshot-20070913-2245.tar.bz2
tar xvf x264-snapshot-20070913-2245.tar
或
tar -xvjf ffmpeg-checkout-snapshot.tar.bz2
unzip到制定目錄:
unzip -d /root/ test.zip
壓縮:xz [原檔名].tar
解壓:unxz [原檔名].tar.xz
#tar -xvf Python-2.7.8.tar.xz
8.另一臺伺服器檔案考到當前伺服器:
scp [email protected]**.**.85:/home/zz/tag_simexam.tar.gz .
遞迴拷貝:
scp -r [email protected]**.151.**.109:/home/fff/sh ./
scp chinaaccess.log_1[1-3].tar.gz [email protected]**.0.**:/tmp/
china.access.log_11.tar.gz、china.access.log_12.tar.gz、china.access.log_13.tar.gz
9.檢視磁碟空間佔用情況
df -l
10.檢視資料夾大小
du -sh * | sort -n
11.定時任務配置:
crontab -e //編輯任務
crontab -l //檢視任務
tail /var/log/cron //定時任務執行日誌
下面的目錄也可以設定按照daily,week,month的定時任務,配置資訊可以檢視/etc/anacrontab檔案
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
拿cron.daily來說明:
RANDOM_DELAY:最大延遲時間45分鐘,
START_HOURS_RANGE:3點到22點之間執行,測試過,一般是多數都是3點22開始執行,但從註釋翻譯過來的意思是在3點到22點之間。
pdriod in days:1 每天的意思
delay in minutes:延遲多少分鐘,這裡是5分鐘
綜上,cron.daily的定時基本上在3.22開始到3.22延遲(45+5)50分鐘區間執行。
12.打zip包
zip -r abc.zip abc
13.環境變數編碼設定
export LC_ALL=UTF-8
vi /etc/profile
JAVA_HOME=/usr/java/jdk1.6.0_13
PATH=${JAVA_HOME}/bin
CLASSPATH=${JAVA_HOME}\jre\lib\rt.jar
14.虛擬目錄建立
ln
#ln -s /web/project/op op //軟連線
取消軟鏈:
#rm op
15.Linux檢視埠號是否被佔用;
netstat -anp | grep ###
16.history增加執行時間;
(1).編輯/etc/bashrc檔案
(2).末尾加:
export HISTFILESIZE=1000000000 #設定儲存歷史命令的檔案大小
export HISTSIZE=1000000 # 儲存歷史命令條數
export PROMPT_COMMAND="history -a" #實時記錄歷史命令,
export HISTTIMEFORMAT="%Y-%m-%d_%H:%M:%S " # 記錄每條歷史命令的執行時間
(3).# source /etc/bashrc
或
echo 'export HISTTIMEFORMAT="%F %T `whoami` "' >> /etc/profile 然後source一下就
或
HISTTIMEFORMAT='%F %T>: '
(4).記錄history檔案:
~/.bash_history
(5)儲存執行過的命令
#history -w
17.配置使用者執行root許可權檔案
visudo
18. 查詢檔案
查詢檔名以make開始的檔案
find -name make*
查詢tmp目錄下的py檔案同時檔名中含有test關鍵字的檔案
find /tmp/ -name *.py|grep test
查詢tmp目錄下的py檔案同時檔案內容中含有test關鍵字的檔案
find /tmp/ -name *.py|xargs grep test
19.檢視環境變數
echo $JAVA_HOME
20. 檢視命令在哪
which pdf2swf
21.nginx啟動
./nginx
平滑重啟
nginx -s reload;
驗證配置:
nginx -t;
強制停止 :
pkill -9 nginx
22.檢視伺服器版本:
lsb_release -a
cat /etc/issue
作業系統核心版本
#cat /proc/version
#uname -a
23.檢視機器位數系統位數
getconf LONG_BIT
24.python使用
mv movefile.sh movefile.py
1213 ll
1214 cat movefile.py
1215 python
1216 vi movefile.py
1217 python movefile.py files.txt
1218 vi movefile.py
1219 python movefile.py files.txt
1220 vi movefile.py
1221 python movefile.py files.txt
1222 ls /web/project/china_files/ware_file/upfiles/20120905153200041.ppt
1223 python movefile.py files.txt
25.檢視資料夾下檔案個數
(1)檢視當前目錄下檔案的個數
ls -l | grep "^-" | wc -l
(2)檢視當前目錄下檔案的個數,包括子目錄裡的。
ls -lR| grep "^-" | wc -l
(3)檢視某目錄下資料夾(目錄)的個數,包括子目錄裡的。
ls -lR| grep "^d" | wc -l
26.檢視程序是否有效!
ps -aux|grep ffmpeg
1010 ll /proc/28120/fd/
1011 strace -f -p 28120
1012 killall ffmpeg
1013 strace -f -p 28120
1014 ps -aux|grep ffmpeg
1015 killall -9 ffmpeg
1016 ps -aux|grep ffmpeg
27.上傳功能大檔案上傳不了
(1)程式控制
(2)nginx配置;
(3)磁碟空間滿;
28.yum安裝及解除安裝
yum install ... //安裝
yum remove ... //謹慎使用,會刪除掉依賴,影響其他軟體
yum remove XXX --nodepes //不刪除依賴
yum provides */lsb_release //找到哪裡可以下載到這個lsb_release命令
yum list installed|grep zeromq3 //檢查軟體zeromq3是否安裝
#yum install lrzsz
29.yum安裝及解除安裝提示無法分配記憶體處理:
cd /var/lib/rpm/
for i in `ls | grep 'db.'`;do mv $i $i.bak;done
rpm --rebuilddb
yum clean all
yum update
修改源:/etc/yum.repos.d/
30.修改系統時間;
ntpdate asia.pool.ntp.org
date -s "2013-05-28"
前提,可以聯網;
修改時區
#tzselect
#cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
31.dns配置;
檔案:/etc/resolv.conf
32.防火牆配置
關閉防火牆--service iptables stop
開啟埠--/sbin/iptables -A INPUT -p udp --dport 58 -j ACCEPT
chkconfig iptables --list
【centOS7】
systemctl stop|start|status firewalld
【防火牆配置檔案:】
/etc/sysconfig/iptables
33.遞迴修改資料夾下檔案的許可權
chmod -R 775 www.huabeisai.com_51100
34.檢視cpu資訊
cat /proc/cpuinfo
35.ant構建
Ant –buildfile build.xml
36.建立使用者
adduser joe
passwd joe
37.hosts配置
vim /etc/hosts
38.配置域名伺服器
vi /etc/resolv.conf
search localdomain
nameserver 202.***.196.***
nameserver 202.***.0.***
39.當前目錄屬於哪個碟符
df -h .
40.兩臺伺服器同步目錄
rsync -av --delete webroot [email protected]***.151.***.46:/opt/web/.
【限速拷貝】
rsync -avPL --bwlimit=10000 /data/ /databak/
41.linux將安裝的命令終端可執行,加到環境變數中即可。
vim /etc/profile
export PATH=....:/root/bin:/opt/mongodb/bin:/usr/local/swftools/bin
source /etc/profile
42.檢視伺服器ssh連結
ps -elf|grep sshd
43.埠號佔用檢視:
ps -ef |grep 程式名
netstat -nltp |grep 埠號或服務名
44.samba啟動:
啟動Samba服務
/etc/rc.d/init.d/smb start
停止Samba服務
/etc/rc.d/init.d/smb stop
重新啟動Smaba服務
/etc/rc.d/init.d/smb restart
重新載入Smaba服務
/etc/rc.d/init.d/smb reload
編輯啟動載入項
ntsysv
chkconfig -level n smb on/off
45.檢視域名指向
nslookup
46.count檔案中一共有多少個exception
cat abc.log | grep exception|wc -l
47.檢視伺服器連線狀態
netstat -nat |awk '{print $6}'|sort|uniq -c|sort -n
netstat -an|grep 80|grep EST|wc -l
48.啟動埠的簡單服務,測試埠是否開通
nc -l 31101
windows telnet ip 31101
49.檢視機器配置
(1)cat /proc/cpuinfo |grep 'Intel(R) Xeon(R) CPU E5620 @ 2.40GHz'|wc -l
(2)作業系統檢視:
uname -a
lsb_release -a
cat /etc/redhat-release
cat /etc/issue #CentOS<=6.5
more /etc/issue
(3)作業系統位數檢視:
getconf LONG_BIT
(4).檢測linux系統是否為虛擬機器/實體機
dmesg | grep -i virtual
(5)檢視CPU資訊:
# 總核數 = 物理CPU個數 X 每顆物理CPU的核數
# 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數
# 檢視物理CPU個數
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
# 檢視每個物理CPU中core的個數(即核數)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 檢視邏輯CPU的個數
cat /proc/cpuinfo| grep "processor"| wc -l
檢視CPU資訊(型號)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
檢視內 存資訊
# cat /proc/meminfo
50.fms關閉命令
/etc/init.d/fms stop
啟動命令:
/etc/init.d/fms start
重啟命令:
/etc/init.d/fms restart
硬碟掛載、硬碟共享。
51.檢視佔用資源的程序
top
lsof -p (PID)10746
52.服務加入自啟動中
編輯
vim /etc/rc.local
檔案即可
53.linux下openoffice啟動
soffice -headless -accept="socket,host=127.0.0.1y,port=8100;urp;" -nofirststartwizard --display :0 &
54.掛載硬碟到某個目錄下
mount /dev/vdb /opt/
55.伺服器重啟後,自啟動
將需要自啟動的指令碼放到:
/etc/init.d
目錄下即可。
56.查詢、替換目錄下所有檔案中某個字串
(1)查詢:
grep -lr 'hello world' /opt/tmp
排除某些檔案查詢,提高查詢效率:
grep -lr 'member.china.root' ./ --exclude=*.out --exclude=*.log
(2)替換/opt/tmp目錄下搜有檔案中zhangsan替換為lisi:
sed -i "s/zhangsan/lisi/g" 'grep zhangsan -lr /opt/tmp'
57.Linux環境變數配置
<1>環境變數配置;
(1)/etc/profile 全域性,任何使用者都可以;
(2)~/.bash_profile 只在當前使用者生效;
<2>終端命令別名配置:
(1)/etc/bashrc 全域性,任何使用者都可以;
(2).bashrc 只在當前使用者生效;
58.伺服器禁ping命令
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
59、vi全域性替換 vi替換 vim替換
替換所有“/local”為“”空字串
:%s/\/local//g
"aaa"替換為"local"
:%s/aaa/local/g
【17行到33行行首加#號】
:17,33s/^/#/g
【去掉17行到33行#號】
:17,33s/^/#/g
:%s/^/#/g 所有行首加#
【vi拷貝17行到25行內容防盜26行】
:17,25 co 26
【vi行首加#號】
17,25s/^/#/g
【vi至行尾】
shift+GG
0#行首
$#行尾
【vi中查詢某個字串出現多少次】
:%s/string/&/gn
60、【重定向標準輸出】
shell將標準錯誤輸出重定向為標準輸出
/tmp/test.sh >/tmp/test.log 2>&1
61、【root使用者下執行admin使用者許可權】
crontab -u admin -l
crontab -u admin -e
!tail
!cat
62、【apache啟動、停止、重啟】
基本的操作方法:
本文假設你的apahce安裝目錄為/usr/local/apache2,這些方法適合任何情況
apahce啟動命令:
推薦/usr/local/apache2/bin/apachectl start apaceh啟動
apache停止命令
/usr/local/apache2/bin/apachectl stop 停止
apache重新啟動命令:
/usr/local/apache2/bin/apachectl restart 重啟
要在重啟 Apache 伺服器時不中斷當前的連線,則應執行:
/usr/local/sbin/apachectl graceful
如果apache安裝成為linux的服務的話,可以用以下命令操作:
service httpd start 啟動
service httpd restart 重新啟動
service httpd stop 停止服務
63.終端全屏 top cpu
ALT+Enter全屏
Sorry, terminal is not big enough
依然提示
mpstat -P ALL 2 1000
&
htop
64.【網路問題分析常用命令】
1、tracert
2、nslookup
3、tcpdump
4、strace
5、ping
65、修改ssh登入埠
#vim /etc/ssh/sshd_config
去掉#Port 22註釋 ,重啟sshd服務:
#/etc/init.d/sshd restart
ssh [email protected]**.** -p 222
66、計算器
bc
67、linux shell 檢視程序的可執行程式路徑
ps -el | grep nginx
ls -l /proc/19120/exe | awk '{print $11}'
68、根據nginx執行程序檢視,nginx配置檔案位置
#ps -ef|grep nginx
#ll /proc/24208/exe
69、shell客戶端最大化
ALT+Enter
70、vim|vi 回退撤銷
u 撤銷上一步的操作
Ctrl+r 恢復上一步被撤銷的操作
71、stat檢視檔案狀態
檢視檔案建立及修改情況
72、檢視伺服器ip命令
ip a|ifconfig
73、建立目錄
#mkdir dir1
如果父目錄不存在則自動建立
#mkdir /usr/local/soft/db/mysql -p
74.檢查軟體包是否安裝
#rpm -qa | grep mysql
#yum list installed|grep mysql
#strings /lib64/libc.so.6 |grep GLIB
75.網路配置|聯網配置|上網配置
配置ip->
vim /etc/sysconfig/network-scripts/ifcfg-eth0
配置域名解析->
vim /etc/resolv.conf
nameserver 202.106.0.20
nameserver 114.114.114.114