服务端测试常用的Linux命令

2 篇文章 0 订阅
1 篇文章 0 订阅

1、pwd(Print Working Directory) 显示当前目录
-L(logical)显示当前目录
-P(physical)无选项 默认使用-P显示当前目录的实际物理地址
例:

[root@rudder home]# pwd  #显示当前目录
/home

[root@web mail]# pwd -P   #目录是软连接,显示实际物理地址
/var/spool/mail

[root@web mail]# pwd -L   #-L显示,逻辑地址
/var/mail

2、cd 目录切换命令
例:

[root@localhost ~]# cd /home/    #切换到home目录
[root@localhost home]# cd -      #返回切换到home前的目录
/root
[root@localhost ~]# cd ../       #切换到上一级目录
[root@localhost /]# cd ~         #切换当前用户的home目录
[root@localhost ~]#
# cd /      # 系统根目录 
# cd      # root根目录
# cd ../../     #返回上上一层目录 

3、用法:mkdir [选项]… 目录…
若指定目录不存在则创建目录。

长选项必须使用的参数对于短选项时也是必需使用的。
-m, --mode=模式 设置权限模式(类似chmod),而不是rwxrwxrwx 减umask
-p, --parents 需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理
-v, --verbose 每次创建新目录都显示信息
-Z, --context=CTX 将每个创建的目录的SELinux 安全环境设置为CTX
例:


[root@localhost ~]# mkdir aaa   #创建目录

[root@localhost ~]# mkdir -m a=rw bbb   #创建指定属性的目录

[root@localhost ~]# mkdir -p 111/abc   #创建目录,父目录存在,建之

# mkdir -p /ms/{sales,hr,web}    #创建一个名为/ms的目录,其中有sales、hr、web的子目录

4、rmdir用法:rmdir [选项]… 目录…
删除指定的空目录。
-p, --parents 删除指定目录及其上级文件夹,例如"rmdir -p a/b/c’“与"rmdir a/b/c a/b a’” 基本相同
-v, --verbose 输出处理的目录详情
例:

[root@localhost ~]# rmdir test            #删除test目录,注意必须是空目录

[root@localhost ~]# rmdir -p a/b/c        #删除指定目录及其上级文件夹

5、vim编辑文件
例:

[root@linux test]# vim test.php   #编辑文件
输入i进入编辑状态,退出编辑按ESC键,不保存退出:q!,保存退出:wq,输入/进入搜索

6、cp复制
用法:cp [选项]… [-T] 源文件 目标文件
 或:cp [选项]… 源文件… 目录
 或:cp [选项]… -t 目录 源文件…
将源文件复制至目标文件,或将多个源文件复制至目标目录。
例:

[root@localhost www]# cp -p test.rb /home/test   #将test.rb copy到test目录,并且保留原文件的属性

[root@localhost www]# cp -r Dir/ /home/test      #将Dir目录copy到test目录下

[root@localhost www]# cp -fr Dir/* /home/test    #将Dir下面的所有文件强制copy到test目录下

[root@localhost www]# cp test.rb{,.bak}          #备份test.rb,并在尾部加上.bak后缀
# cp -u -v file1 file2   #复制文件,只有源文件较目的文件的修改时间新时,才复制文件

# cp file1 file2    #将文件file1复制成文件file2

# cp -i file1 file2   #采用交互方式将文件file1复制成文件file2

# cp -f file1 file2    #将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制的模式

# cp -R dir1 dir2    #将目录dir1复制成目录dir2

# cp -R file1 file2 file3 dir1 dir2    #同时将文件file1、file2、file3与目录dir1复制到dir2

# cp -p a.txt tmp/   #复制时保留文件属性

# cp -P  /var/tmp/a.txt  ./temp/    #复制时保留文件的目录结构

# cp -b a.txt tmp/    #复制时产生备份文件

# cp -b -V t   a.txt /tmp     #复制时产生备份文件,尾标 ~1~格式

# cp -b -S _bak a.txt /tmp    #指定备份文件尾标

7、mv 移动(复制删除新建意思)
用法:mv [选项]… [-T] 源文件 目标文件
 或:mv [选项]… 源文件… 目录
 或:mv [选项]… -t 目录 源文件…
将源文件重命名为目标文件,或将源文件移动至指定目录。


[root@linux ~]# mv abc abc.php  #将abc移动成abc.php

[root@linux ~]# mv test.php{,.sh}  #将test.php增加后辍

[tank@localhost ~]$ mv aaa bbb  #将目录或者文件重命名,如果存在bbb目录,则是将aaa移到bbb目录下

8、find查找文件
find 查找目录和文件
find 路径 -命令参数 [输出形式]
例:
a.通过名字查找

[zhangy@BlackGhost ~]$ find ~ -name memcached.pid -print   #查找home目录下文件名为memcache.pid的文件
/home/zhangy/memcached/memcached.pid

[zhangy@BlackGhost ~]$ find . -name "*.pid" -print      #.代表当前目录,查找所有以pid结尾的文件
./memcached/memcached.pid
./.tencent/qq/95219454.pid

[zhangy@BlackGhost ~]$ find ~ -name "[0-9]*.pid" -print   #查找以数字开头的所有pid文件,在这里要说[0-9]*不能匹配23,它跟一般的语言类正则不太一样,shell里面的*可以代表一切字符(单个,多个都行),如果想匹配2345只能这样写[0-9][0-9][0-9][0-9]
/home/zhangy/.tencent/qq/95219454.pid

[zhangy@BlackGhost ~]$ find /home/zhangy/.tencent/ -name "[0-9]*.pid" -print  #在.tencent文件夹下面找pid文件
/home/zhangy/.tencent/qq/95219454.pid

b,通过文件权限来查找

[zhangy@BlackGhost css]$ find ~ -perm 755 -print |more   #~代表的是$home目录,查找权限为755的文件
/home/zhangy/www/css2/c_textshadow.html
/home/zhangy/www/css2/c_textautospace.html


[zhangy@BlackGhost css]$ find . -perm 700 -name "u_*" -print |more  #查找所有以产u_开头的,并且权限为700的文件
./css2/u_length_cm.html
./css2/u_length_px.html

c.prune来忽略目录来查找

[zhangy@BlackGhost download]$ find . -name "*.gz"  -prune -o \( \! -name aaa \)  -print  #查找在前目录中,不在以aaa结尾的目录中的,不以gz结尾的文件
.
./eaccelerator-0.9.5.3.tar
./fix-crash-in-excerpts.patch
./AddFeed_Widget_WordPress_Plugin.zip
./jQuery china-addthis plugin 1.07.rar

d,根据文件类型来查找文件

[zhangy@BlackGhost download]$ find . -type d -print   #查找当前目录下面的目录
.
./ddd

[zhangy@BlackGhost download]$ find . ! -type d -print  #找当前目录下面的非目录文件
./eaccelerator-0.9.5.3.tar
./haproxy-1.3.15.7.tar.gz
./fix-crash-in-excerpts.patch

f.根文件的修改时间来查找

[zhangy@BlackGhost download]$ find /home/zhangy -mtime -5 -print  #5天修改过的文件,- 表示以内
/home/zhangy/www/css2/c_textshadow.html
/home/zhangy/www/css2/c_textautospace.html

[zhangy@BlackGhost download]$ find /home/zhangy -mtime +5 -print   #查找5天前修改过的文件,+表示以前
/home/zhangy/www/test.php

[root@vmx14420 www]# find ./ -mmin -5 -print  #查找5分钟以内修改过的文件
./cache/index.html
# find .|xargs grep -ri "656122" -l|uniq    #按照文件内容查找, 并列出文件名字

9.ps–查进程

root@test001:~ # ps -aux | grep named   #查看named进程详细信息
root  579   0.0 11.8 68268 26980 v0- I    18:14     0:00.33 /usr/local/named/sbin/named -gc /etc/named.conf
root  982   0.0  0.1   412   328  1  R+   21:29     0:00.00 grep named

10.netstat - 显示网络连接,路由表,接口状态,伪装连接,网络链路信息和组播成员组。

[root@localhost ~]# netstat -anp |grep 3306 -c   #查看3306 端口(mysql)的链接数

11.kill----结束进程

[root@redhat ~]# kill 1908   #杀死进程

[root@redhat ~]# kill -KILL 1908   #强制杀死进程

[root@redhat ~]# kill -9 6985     #彻底杀死进程

[root@redhat ~]# kill -u tank   #杀死指定用户的所有进程

12.locate–查找

[root@localhost ~]# locate ~/install  #查找当前目录下以install开头的文件  
/root/install.log
/root/install.log.syslog

[root@localhost ~]# locate -i ~/install  #查找当前目录下以install开头的文件,不区分大小写
/root/install.log
/root/install.log.syslog

[root@localhost ~]# locate -i /etc/fuc  #查找/etc目录下面以fuc开头的文件,不区分大小写 

未完待续…

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值