首页 > 代码库 > linux常用命令

linux常用命令

1、chgrp 改变所属群组:

例:将install.log的群组改为users

chgrp users install.log

ls –l

查看结果:root          users 68495 25 08:53 install.log

              拥有者        群组

2、chown改变拥有者

例:将install.log文件拥有者改成bin这个账号

chown    bin    install.log

ls –l

结果:bin      users    68945   25  08:53  install.log

例:将install.log的拥有者和群组改成root

chown     root:root    install.log

ls –l

结果:root      root    68495  25 08:53  install.log

3、改变权限

设定权限的方法有两种,一种是使用数字,另一种是使用符号进行设定权限

·使用数字设定权限

  linux文件的基本权限有九个,分别是owner、group、others三种身份各有自己的read、write、execute权限,分别是r:4、w:2、x:1每种身份都需要累加的

例:

ls –a .bashrc

-rw-r—r--   1   root  root   385 jul   4 11:45  .bashrc

chmod  777 .bashrc

ls –a .bashrc

-rwxrwxrwx   1   root   root   385  jul 4  11:35  .bashrc

·符号类型改变文件权限

由u、g、a分别代表user、group、others,以及a代表all即全部的身份;+表示加入、-表示除去、=表示设定

例:

chmod u=rwx,go=rx  .bashrc

注意:中间的u=rwx,go=rx是连在一起的,没有任何空格

chmod a+w  .bashrc

chmod a-x  .bashrc

4、目录的相关操作

cd(变换目录)

技术分享

pwd(显示当前所在的目录)

[root@www ~]# pwd [-P]

选项与参数: -P :显示出确实的路径,而非使用连结 (link) 路径。

范例:单纯显示出目前的工作目录:

[root@www ~]# pwd /root <== 显示出目录啦~

范例:显示出实际的工作目录,而非连结档本身的目录名而已

[root@www ~]# cd /var/mail <==注意,/var/mail是一个连结档

[root@www mail]# pwd /var/mail <==列出目前的工作目录

[root@www mail]# pwd -P /var/spool/mail <==怎么回事?有没有加 -P 差很多~

[root@www mail]# ls -ld /var/mail

lrwxrwxrwx 1 root root 10 Sep 4 17:54 /var/mail -> spool/mail

# 看到这里应该知道为啥了吧?因为 /var/mail 是连结档,连结到 /var/spool/mail # 所以,加上 pwd -P 的选项后,会不以连结档的数据显示,而是显示正确的完整路径啊!

mkdir(创建新目录)

[root@www ~]# mkdir [-mp] 目录名称

选项与参数:

-m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~

-p :帮助你直接将所需要的目录(包含上一级目录)递回创建起来!

范例:请到/tmp底下尝试创建数个新目录看看:

[root@www ~]# cd /tmp

[root@www tmp]# mkdir test <==创建一名为 test 的新目录

[root@www tmp]# mkdir test1/test2/test3/test4

mkdir: cannot create directory `test1/test2/test3/test4‘: No such file or directory <== 没办法直接创建此目录啊!

[root@www tmp]# mkdir -p test1/test2/test3/test4 # 加了这个 -p 的选项,可以自行帮你创建多层目录!

范例:创建权限为rwx--x--x的目录

[root@www tmp]# mkdir -m 711 test2

[root@www tmp]# ls -l drwxr-xr-x 3 root root 4096 Jul 18 12:50 test drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1 drwx--x--x 2 root root 4096 Jul 18 12:54 test2

# 仔细看上面的权限部分,如果没有加上 -m 来强制配置属性,系统会使用默认属性。 # 那么你的默认属性为何?这要透过底下介绍的 umask 才能了解喔! ^_^

rmdir(删除空的目录)

[root@www ~]# rmdir [-p] 目录名称

选项与参数: -p :连同上一级『空的』目录也一起删除

范例:将於mkdir范例中创建的目录(/tmp底下)删除掉!

[root@www tmp]# ls -l <==看看有多少目录存在?

drwxr-xr-x 3 root root 4096 Jul 18 12:50 test drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1 drwx--x--x 2 root root 4096 Jul 18 12:54 test2

[root@www tmp]# rmdir test <==可直接删除掉,没问题

[root@www tmp]# rmdir test1 <==因为尚有内容,所以无法删除!

rmdir: `test1‘: Directory not empty

[root@www tmp]# rmdir -p test1/test2/test3/test4

[root@www tmp]# ls -l <==您看看,底下的输出中test与test1不见了!

drwx--x--x 2 root root 4096 Jul 18 12:54 test2

# 瞧!利用 -p 这个选项,立刻就可以将 test1/test2/test3/test4 一次删除~

# 不过要注意的是,这个 rmdir 仅能『删除空的目录』喔!

5、查看进程和服务

将所有的服务列举出来:

chkconfig  --list [name]

查看某个具体服务的状态

service servicename status

查看进程

ps a 显示现行终端下的所有程序

例如:最常用的是ps aux,然后通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作

ps aux | grep program_filter_word,ps –ef |grep tomcat

ps –ef |grep java|grep –v grep 显示出所有的java进程,去除掉当前的grep进程。

rpm –qa|grep tomcat查看是否安装了tomcat

6、nastat用于查看显示各种网络相关的信息,如网络连接、路由表、接口状态等等

比如说

nastat -at查看所有tcp端口

nastat -a查看所有端口

nastat -au查看所有udp端口

linux常用命令