Linux 常用命令学习

一、cat命令
linux cat命令在linux 系统中算是比较常用的命令.
cat主要有三大功能:  www.2cto.com  
1.一次显示整个文件。
$ cat   filename
2.从键盘创建一个文件。
$ cat  >  filename
只能创建新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。
$cat   file1   file2  > file
 
cat具体命令格式为 : cat [-AbeEnstTuv] [--help] [--version] fileName
说明:把档案串连接后传到基本输出(屏幕或加 > fileName 到另一个档案)
参数:
-n 或 –number 由 1 开始对所有输出的行数编号
-b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 –show-nonprinting
   www.2cto.com  
范例:
cat -n linuxfile1 > linuxfile2 把 linuxfile1 的档案内容加上行号后输入 linuxfile2 这个档案里
cat -b linuxfile1 linuxfile2 >> linuxfile3 把 linuxfile1 和 linuxfile2 的档案内容加上行号(空白行不加)之后将内容附加到linuxfile3 里。
 
范例:
把 linuxfile1 的档案内容加上行号后输入 linuxfile2 这个档案里
cat -n linuxfile1 > linuxfile2
把 linuxfile1 和 linuxfile2 的档案内容加上行号(空白行不加)之后将内容附加到 linuxfile3 里。
cat -b linuxfile1 linuxfile2 >> linuxfile3
cat /dev/null > /etc/test.txt 此为清空/etc/test.txt档案内容

二 开启/停止某服务
sudo service  某服务名 start (开启服务)
sudo service 某服务名 stop (关闭服务)
pgrep 某服务名  (查看服务是否存在)
ps -e 查看当前所有进程
kill 服务进程后,杀死某服务

三 修改文件模式/文件所属用户/文件所属用户组 chmod/chown/chgrp
首先介绍显示文件/文件夹属性的命令: ls
ls -l 文件名  (显示该文件的所有属性)
ls -l (显示当前目录下非隐藏文件/文件夹的属性)
ls -al(包括隐藏文件/文件夹的属性)
ls -ld 文件夹(显示该文件夹的属性)

chmod命令
Linux/Ubuntu 系统中文件调用的权限分为三级:文件拥有者(u)、群组(g)、其他(o)。用chmod就可以更改文件的权限。chmod是一个相当灵活的命令,对同一个文件的权限的修改可以用多种风格的命令格式来实现。
文件权限有三种 可读(r),可写(w),可执行(x)
对于一个文件
r:表示可以读取文件内容
w:表示修改文件内容,但不包扩删除该文件
x:表示可执行该文件

对于一个文件夹:
r:表示可浏览该文件夹的内容
w:表示可删除该文件夹内部的文件或文件夹(但不能删除本文件夹),可在该文件夹内部添加文件或文件夹
x:表示可以该文件夹作为当前目录(即可cd至该文件夹)

chmod命令的两种调用方式:

  方式一:

  语法格式: chmod [-vR] mode 文件名

  参数说明:

  mode 权限设置字串,格式为[ugoa] [+-=] [rwx]

  u 表示文件的拥有者

  g 表示与此文件拥有者属于一个组群的人

  o 表示其他人

  a 表示包含以上三者即文件拥有者(u)、群组(g)、其他(o)

  + 表示增加权限

  - 表示取消权限

  = 表示唯一设置权限

  r 表示有读取的权限

  w 表示有写入的权限

  x 表示有执行的权限

  -v 显示权限改变的详细资料

  -R 表示对当前目录下的所有文件和子目录进行相同的权限更改

  例:

  我们要将当前目录下ownlinux这个文件的权限修为所有用户拥有该文件的读取、写入、执行的权限。在这里就需要结合sudo命令来使用,如果你对sudo命令还不太了解,请先看看本站的《sudo命令详解》

  linux@server:/var/www$">ownlinux@server:/var/www$ sudo chmod a+rwx ownlinux

  [sudo] password for ownlinux: (此时输入你的密码)

  或者使用

  ownlinux@server:/var/www$ sudo chmod ugo+rwx ownlinux

  [sudo] password for ownlinux: (此时输入你的密码)

  命令不一样,但执行后的效果是一样的。
语法格式: chmod [-vR] [No] 文件名

  参数说明:

  No 三位代表相应权限的数字

  -v 显示权限改变的详细资料

  -R 表示对当前目录下的所有文件和子目录进行相同的权限更改

  可能这种方式对于初学者来说有一定的难度,但这种方法学会后在更改文件权限就变得非常的简单。相信通过我的介绍大家会掌握种方法的:)

  首先了解一下读取(r)、写入(w)、执行(x)相应的数字编号,如下图所示

  

 

  如果你记住了上图所示的数字和对应的权限就往下边看

  刚才已经说过了,[No]参数 是三位代表相应权限的数字。从左向右,第一位数学代表文件拥有者(u)的权限、群组(g)的权限、其他(o)的权限。每一个数字就对应该级用户拥有的权限即为rwx相应的数字之和。这样说可能大家不是很明白,我画了一张表帮助大家了解

  

 

  如上图可以看出来如果是所有用户拥有该文件的读取、写入、执行的权限就是拥有者(u)的权限(4+2+1=7)群组(g)的权限(4+2+1=7)其他(o)的权限(4+2+1=7即为777。注意:如果没有读取的权限则”r”相应的数字编号就为”0″,写入(w)、执行(x)同理。

  例:

  就用刚才方式一的例子,我们要将当前目录下ownlinux这个文件的权限修为所有用户拥有该文件的读取(r)、写入(w)、执行(x)的权限。回顾一下方式一的命令格式。

  ownlinux@server:/var/www$ sudo chmod a+rwx ownlinux

  [sudo] password for ownlinux: (此时输入你的密码)

  方式二的命令

  ownlinux@server:/var/www$ sudo chmod 777 ownlinux

  [sudo] password for ownlinux: (此时输入你的密码)

  可以看出使用方式二的命令格式简洁明了

  如果要让当前目录下ownlinux这个文件的权限修为该文件的拥有者(u)有该文件的读取(r)、写入(w)、执行(x)的权限,群组(g)和其他(o)的用户只有读取(r)和执行(x)的权限,运行以下命令:

  ownlinux@server:/var/www$ sudo chmod 755 ownlinux

  [sudo] password for ownlinux: (此时输入你的密码)

  相信通过我的介绍大家都已经对chmod这个命令有一定的了解了吧。我觉得方式二的命令风格一但了解了就很容易掌握,而且方式二的命令风格简单明了。

chown命令

利用chown命令

    例1:把文件test.c的所有者改为diffenyu。

 $ chown diffenyu test.c

 例2:把目录/his及其下的所有文件和子目录的属主改成diffenyu,属组改成diffenyu。

 $ chown - R diffenyu /his

chgrp命令

chgrp 用户组 文件夹/文件 (用户组必须是已注册用户组)


四 查看文件/文件夹大小(df / du / ls)

在Linux中,由于很多Linux都没有安装图形界面,并且没有像windows那样通过查看或分区属性来查看磁盘或者是文件的占用的情况,但是,通过下面介绍的方法。我们可以很方便的查看文件或者是磁盘的使用情况:

1.df (查看分区使用情况)

例:查看当前磁盘的使用情况:

1
sudo df -h

其中,-h选项的作用是将大小转换为G,M,Kb形式,因为df默认是单位为K,加上了-h选项后就可以满1024k自动显示为1M等等

2.du (查看目录或文件磁盘占用情况)

1.查看当前目录下所有目录的使用情况:

1、sudo du -sh *

-s选项的作用是汇总,目的是将同一个目录下的所有文件的大小相加汇总到目录下,也就是相当于汇总目录的占用情况, 如果不加-s选项的话,那么会显示当前目录下所有文件的大小

因此,为了查看当前目录下各个目录的占用情况,必须加上-s

2.查看指定目录的占用情况:

1
sudo du -sh / #查看根目录的占用情况sudo du -sh /* #查看根目录下所有目录的占用情况

3.查看指定文件的大小:

1
sudo du -sh /home/root/text .txt #查看root用户目录下text.txt文件的大小

3.ls  (查看文件夹占用大小):

ls也提供也一个选项用于查看文件大小;比如

1
ls -shl  #查看当前目录各文件和目录的大小

但是,要特别注意的是,ls -shl 提供的查看文件或文件夹大小和du -sh的区别是,ls -shl显示的文件夹大小为文件夹所占用的大小,一般都为4K,而不是文件夹中所有文件的大小之和



 

你可能感兴趣的:(Ubuntu)