Linux常用基础命令(二)

640?wx_fmt=gif

上次给大家讲了一些linux的基本操作,这次我们再来点新的!

640?wx_fmt=png

但是,

在此之前,

我和大家解释一个问题,有同学问我说:ls -l所展示的结果前面的那个东西他看不懂,说我上次解释的不够明确,

那我这次就再来解释一下!!!

问问题的那个同学,这次你看好了!!!

640?wx_fmt=png

我们把数据拿出来看:

drwxr-xr-x 4 root root      4096 Feb 22 18:15 johnwu

drwxr-xr-x       文件属性

4                     连接数

第一个root      文件拥有者

第二个root      所属群组

4096               文件大小

Feb 22 18:15  文件修改时间

johnwu            文件名

下面我们具体去看前面第一个drwxr-xr-x

r代表read 可读    w代表write 可写  x表示execute执行  -代表不可读or写or执行(主要看-所在的位置)

对于上面的文件熟悉我们现在要来进行分组,我现在需要把它分成四组,现在写成以下形式:

 d        rwx          r-x          r-x

文件     用户权限    组权限    组外权限 

第一段d它指定了文件类型,如果它显示的不是d是一个 -  就表示这是一个非目录文件,如果是d 就表示这是一个目录(d是dictionary的缩写)

第二段rwx是文件的所有者usr的属性,代表usr用户对他的所有权限

第三段r-x是文件所隶属的这个组Group的权限

第四段r-x是组外用户other所对这个文件的权限

对于上面的权限,我们可以进行一些操作,来修改他们,对于修改权限,我们有两种方法,都是使用chmod指令去进行修改:

chmod   用户参数    操作权限     文件名称

用户参数:u,g,o,a  

u代表user 当前用户,g代表group 组内用户,o代表other 组外用户,a代表all,所有的,是u,g,o的集合

操作方法:+,-,=

+代表添加权限,-代表取消权限,=代表取消旧的权限,给予新的权限

操作参数:r,w,x,-

上面已经讲过了,r-read ,w-write,x-execute,

 -  代表不可以read或write或execute

现在我们来操作示例一下:

 chmod o-rwx johnwu      //不允许组外用户读写执行

640?wx_fmt=png

chmod u-w johnwu      //取消用户的写权限

640?wx_fmt=png

 chmod ug+xwr johnwu     //增加用户和组内的读写执行权限

640?wx_fmt=png

下面一种修改文件的方法就更简单了:

chmod     ugo    文件名

这里说明一下,ugo都代表数字,数字的值是有限定的

分别表示User、Group、及Other的权限。

那我们现在计算一下:

rwx      对应的数字就是 4+2+1=7

r-x        对应的数字是:4+1=5

rw-      对应的数字是: 4+2=6

-wx     对应的数字是:2+1=3

---     对应的数字就是:0

那我们现在再看修改johnwu文件的属性吧:

chmod 777 johnwu      //对所有组内外用户(每个人)开启所有权限

640?wx_fmt=png

chmod 700 johnwu    //仅所有者有(usr)读和写以及执行的权限

640?wx_fmt=png

大家可以动手试起来了!

下面我们讲一讲linux下软件的安装:

这边小编用的是ubuntu系统,所以安装口令会和centos有一些不同(ubuntu和centos都属于linux系统,还有其他的linux系统如redhat等等。。。)

如何使用ubuntu去安装软件,这个时候我们需要用到apt-get指令(在centos下是yum指令):

                             apt-get install 软件名  

比如说,我现在想要安装nodejs,我们就可以:

apt-get install nodejs

640?wx_fmt=png

当然,如果提示权限不够,我们可以在apt-get之前加一个sudo,这样就能确保指令能正确运行了。

以后再ubuntu上想装什么软件都可以使用apt-get来安装了!

再下面我们讲一下文件的解压与压缩:

一般用到的口令是tar

后面一般接参数,参数有以下几种:

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。

-c: 建立压缩档案

-x:解压

下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。(-f是必须的)

tar -czf johnwu.tar.gz johnwu

把johnwu这个文件夹压缩成johnwu.tar.gz压缩包

640?wx_fmt=png

这样就生成了一个新的压缩包

当然我们也可以生产其他格式的压缩包:

tar –cvf johnwu.tar johnwu //将目录里johnwu文件打包成johnwu.tar

tar –cjf johnwu.tar.bz2 johnwu  //将目录里johnwu文件打包成johnwu.tar.bz2 

上面是讲的压缩,现在我们来看看解压,我们目录下有压缩文件,现在我们来将其解压

我们先看看解压口令:

tar –xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2

tar –xZvf file.tar.Z   //解压tar.Z

unrar e file.rar //解压rar(需要apt-get安装)

unzip file.zip //解压zip(需要apt-get安装)

640?wx_fmt=png

我们现在要对mongodb-linux-x86_64-3.0.6.tgz 进行解压,它属于tar.gz文件,所以我们采用tar.gz来解压:

tar -xzvf mongodb-linux-x86_64-3.0.6.tgz

640?wx_fmt=png

我们看到生成新的目录了,证明我们的解压成功了。

大家有空试试。

最后再来一个搜索文件.

用到的指令是find

find 路径名称 -参数选项 

下面我们看看使用场景,这边我列出了多个使用场景,大家可以试试看:

find / -name filename 在根目录里面搜索文件名为filename的文件 

find /etc -name *s*在目录里面搜索带有s的文件 

find /etc -name *S 在目录里面搜索以s结尾的文件 

find /etc -name s*在目录里面搜索以s开头的文件 

find / -amin -10在系统中搜索最后10分钟访问的文件 

find / -atime -2查找在系统中最后48小时访问的文件 

find / -empty 查找在系统中为空的文件或者是文件夹 

find / -group groupname 查找在系统中属于groupname的文件 

find / -mmin -5查找在系统中最后5分钟修改过的文件 

find / -mtime -1查找在系统中最后24小时修改过的文件 

find /-nouser查找在系统中属于费用户的文件 

find / -user username 查找在系统中属于username的文件 

find / -ctime -1查找在系统中最后24小时被改变状态的文件 

find / -user user1name -or -useruser2name查找在系统中属于user1name或着属于user2name的文件

find / -user user1name -and-user2name在系统中查找既属于user1name又属于user2name用户的文件

find / -name johnwu

640?wx_fmt=png

find /usr/local -name *py

640?wx_fmt=png

大家回去试试看吧!

今天就到这里吧!

640?wx_fmt=jpeg

听说有气质的人都会关注这个公众号!

640?wx_fmt=jpeg

文章来源: blog.csdn.net,作者:敲代码的灰太狼,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/tongtongjing1765/article/details/100581777

(完)