一. 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 zh@59.**.**.85:/home/zz/tag_simexam.tar.gz .
递归拷贝:
scp -r zdde@**.151.**.109:/home/fff/sh ./
scp chinaaccess.log_1[1-3].tar.gz admin@10.**.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 root@***.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