常用DOS命令和Linux命令
DOS命令
1、查询端口占用情况:netstat -aon |findstr "8080"; 查看端口进程号;
2、查看进程号信息: tasklist |findstr "9999";
3、杀进程: taskkill -f -t -im javaw.exe;
4、修改mysql数据库密码:
mysql>use mysql;
mysql>UPDATE user SET password=PASSWORD('输入新密码') WHERE user='root';
mysql>FLUSH PRIVILEGES
5、设置环境变量:
查看命令:set *;
set ABC_HOME=G:\ant\rocketmq-all-4.2.0;
set path=G:\ant\rocketmq-all-4.2.0;%path%;
6、dos命令输出日志到文件:
输出文件目录:dir >> dir.txt 输出日志 追加到dir.txt中
dir > dir.txt 输入日志到dir.txt中,不追加,覆盖
查看文件夹大小并输出 dir /a /s >size.txt
7、dos窗口隐藏:
1》:
@echo off if "%1" == "h" goto begin mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit :begin :: 下面写dos命令 例如: dir > dir.txt
2》:使用vbe文件
:: DIM objShell set objShell=wscript.createObject("wscript.shell") :: iReturn=objShell.Run("cmd.exe /C c:\1.bat", 0, TRUE) ::(其中win.bat为你自己的批处理名字,自己改) :: 然后把这个记事本保存为后缀名为.vbe的文件,到时候你只要运行这个vbe文件就达到目的了! :: 可以写的简单点: :: Set ws = CreateObject("Wscript.Shell") :: ws.run "cmd /c c:\1.bat",0 :: 或者 CreateObject("WScript.Shell").Run "cmd 1.bat",0 :: (这种写法很多杀软报毒, 需要替换参数0)
8:
Linux命令
1、查询系统内存情况:(top,free,)
top
PID:进程的ID USER:进程所有
PR:进程的优先级别,越小越优先被执
NInice:
VIRT:进程占用的虚拟内
RES:进程占用的物理内
SHR:进程使用的共享内
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示 该进程优先值为负
%CPU:进程占用CPU的使用
%MEM:进程使用的物理内存和总内存的百分
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加 值
COMMAND:进程启动命令名称
2、sftp文件下载命令:
在SFTP窗口里面
1:设置你要下载目标路径
语法结构:
lcd 要下载的目标路径
get “要下载的文件”
下载文件夹:
切换到下载目录
get –r “要下载的文件夹” (绝对路径)
2、防火墙配置:
vim /etc/sysconfig/iptables
#屏蔽单个IP的命令是
iptables -I INPUT -s 123.45.6.7 -j DROP
#封整个段即从123.0.0.1到123.255.255.254的命令
iptables -I INPUT -s 123.0.0.0/8 -j DROP
#封IP段即从123.45.0.1到123.45.255.254的命令
iptables -I INPUT -s 124.45.0.0/16 -j DROP
#封IP段即从123.45.6.1到123.45.6.254的命令是
iptables -I INPUT -s 123.45.6.0/24 -j DROP
指令I是insert指令 但是该指令会insert在正确位置并不像A指令看你自己的排序位置,因此用屏蔽因为必须在一开始就要加载屏蔽IP,所以必须使用I命令加载,然后注意执行/etc/rc.d/init.d/iptables save进行保存后重启服务即可 .
[root@localhost ~]# service iptable status ---查看防火墙状态
[root@localhost ~]#servcie iptables stop --临时关闭防火墙
[root@localhost ~]#service iptables start --临时启动防火墙
[root@localhost ~]#service iptables restart --重启防火墙
[root@localhost ~]#chkconfig iptables off --永久关闭防火墙
[root@localhost ~]#chkconfig iptables on --永久开启防火墙
3、查看linux系统版本:
1) 列出所有版本信息,
[root@localhost ~]# lsb_release -a
LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: CentOS
Description: CentOS release 5.5 (Final)
Release: 5.5
Codename: Final
注:这个命令适用于所有的linux,包括RedHat、SUSE、Debian等发行版。
2) 执行cat /etc/issue,例如如下:
[root@localhost ~]# cat /etc/issue
CentOS release 5.5 (Final)
Kernel r on an m
3) 执行cat /etc/redhat-release ,例如如下:
[root@localhost ~]# cat /etc/redhat-release
CentOS release 5.5 (Final)
查看系统是64位还是32位:
1、getconf LONG_BIT or getconf WORD_BIT
[root@localhost ~]# getconf LONG_BIT
64
2、file /bin/ls
[root@localhost ~]# file /bin/ls
/bin/ls: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped
3、lsb_release -a
[root@localhost ~]# lsb_release -a
LSB Version: :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch
Distributor ID: CentOS
Description: CentOS release 5.5 (Final)
Release: 5.5
Codename: Final
根据版本不同,命令各有不同;
4、文件解压命令:
1)对于.tar结尾的文件
tar -xf all.tar
2)对于.gz结尾的文件
gzip -d all.gz
gunzip all.gz
3)对于.tgz或.tar.gz结尾的文件
tar -xzf all.tar.gz
tar -xzf all.tgz
4)对于.bz2结尾的文件
bzip2 -d all.bz2
bunzip2 all.bz2
5)对于tar.bz2结尾的文件
tar -xjf all.tar.bz2
6)对于.Z结尾的文件
uncompress all.Z
7)对于.tar.Z结尾的文件
tar -xZf all.tar.z
8,压缩文件夹:
tar -zcvf /root/1.tar.gz /home
5、 查询文件大于100M的文件
find . -type f -size +100000k -print0 | xargs -0 du -h | sort -nr
1.按照文件名查找
(1)find / -name httpd.conf #在根目录下查找文件httpd.conf,表示在整个硬盘查找
(2)find /etc -name httpd.conf #在/etc目录下文件httpd.conf
(3)find /etc -name '*srm*' #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
(4)find . -name 'srm*' #表示当前目录下查找文件名开头是字符串‘srm’的文件
2.按照文件特征查找
(1)find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time)
(2)find / -atime -2 # 查找在系统中最后48小时访问的文件
(3)find / -empty # 查找在系统中为空的文件或者文件夹
(4)find / -group cat # 查找在系统中属于 group为cat的文件
(5)find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time)
(6)find / -mtime -1 #查找在系统中最后24小时里修改过的文件
(7)find / -user fred #查找在系统中属于fred这个用户的文件
(8)find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
(9)find / -size -1000k #查找出小于1000KB的文件
6、上传xxx.jar包,设置service (start,stop,status,restart)
-
将xxx.jar上传到linux服务器
-
将jar包设置成可执行文件。chmod +x xxx.jar
-
在/etc/init.d下创建软链接
$ sudo ln -s /var/myapp/myapp.jar /etc/init.d/myapp
-
启动服务
service myapp start
7、查看端口占用情况:
netstat -tunlp |grep 端口号
8、两台Centos机器复制文件:
一台192.168.1.1;另一台192.168.1.2 现在在将192.168.1.1上的一个文件复制到192.168.1.2。登陆到192.168.1.1然后运行命令
命令:scp /home/look/dev-software/alibaba-rocektmq-3.2.6.tar.gz 192.168.1.2:/home/look/dev-software/
复制文件夹:
命令:scp -r /home/look/dev-software/ 192.168.1.2:/home/look/
然后输入192.168.1.2的密码就可以了
ssh非22端口,需加端口的话 scp -P 端口号 .....
scp -P 23 -r /home/look/dev-software/ 192.168.1.2:/home/look/
9、查看应用版本:
rpm -qa | grep httpd;
显示每个文件和目录的磁盘使用空间
命令参数
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-s或--summarize 仅显示总计,只列出最后加总的值。
-h或--human-readable 以K,M,G为单位,提高信息的可读性。
df
显示指定磁盘文件的可用空间
-a 全部文件系统列表
-h 方便阅读方式显示
-i 显示inode信息
-T 文件系统类型
free
内存使用情况
Mem:表示物理内存统计
total:表示物理内存总量(total = used + free)
used:表示总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
free:未被分配的内存。shared:共享内存。
buffers:系统分配但未被使用的buffers 数量。cached:系统分配但未被使用的cache 数量。
-/+ buffers/cache:表示物理内存的缓存统计
used2:也就是第一行中的used – buffers-cached 也是实际使用的内存总量。 //used2为第二行
free2= buffers1 + cached1 + free1 //free2为第二行、buffers1等为第一行
free2:未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。
Swap:表示硬盘上交换分区的使用情况
11、vi/vim打开文件后搜索字符串:
1. 命令模式下,输入:/字符串
比如搜索user, 输入/user
按下回车之后,可以看到vim已经把光标移动到该字符处和高亮了匹配的字符串
2. 查看下一个匹配,按下n(小写n)
3. 跳转到上一个匹配,按下N(大写N)
4. 搜索后,我们打开别的文件,发现也被高亮了,怎么关闭高亮?
命令模式下,输入:nohlsearch 也可以:set nohlsearch; 当然,可以简写,noh或者set noh。
12、root用户被提示:Operation not permitted的解决方法
使用root用户删除服务器上的一个文件时,被系统告知:Operation not permitted。甚至不能使用chmod给777权限。
上面我们执行的chmod命令,其底层实现是chattr命令,用此命的功能更为强大,甚至可以锁定文件,即使root用户也操作不了此文件。
chattr是用来更改文件属性,lsattr可用来查看文件的属性,执行命令lsattr /webapps/.usr.ini便可以看到当前文件的属性;
可以发现当前文件有个i属性,查阅命令帮助文档可以看到有i属性的文件是不能修改的,更不可被删除,即使是root用户也不可。
既然知道了文件不能删除的原因是加了i属性,所以相应的解决方案就是把文件的i属性去除,然后再删除。
chattr -i webapps //去除i属性
rm -rf webapps //删除文件夹
13:设置文件大小为0,在不删除文件的情况下清空内容
echo > xxx.log
14:linux下使用vim编辑文件,出现^M是什么意思
出现这个符号的原因很简单,因为这个文件你在windows平台下编辑过,我们知道在windows平台下,换行符是\r\n,
而在linux下是\n,这多出来的\r被vim解释成了^M
比较快捷的去除这些符号的方法:
用VI的命令:
使用vi打开文本文件 命令模式下输入 :set fileformat=unix :w 在终端下敲命令: $ dos2unix filename 直接转换成unix格式,就OK了!~
语法为 :[addr]s/源字符串/目的字符串/[option]
全局替换命令为::%s/源字符串/目的字符串/g
[addr]: 表示检索范围,省略时表示当前行。
s :表示替换操作如:“1,20” :表示从第1行到20行;
“%” :表示整个文件,同“1,$”;
“. ,$” :从当前行到文件尾;
[option] :表示操作类型
如:g 表示全局替换;
c 表示进行确认
p 表示替代结果逐行显示(Ctrl + L恢复屏幕);
省略option时仅对每行第一个匹配串进行替换;
如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义
判断远程主机端口是否放通:
ssh -v -p 30000 10.18.26.3
返回上一次切换目录:
cd -