linux 第二周

 一. 文件管理
       文件被组织到文件系统(file system)中,通常会成为一个树状(tree)结构。Linux有一个根目录/, 也就是树状结构的最顶端。这个树的分叉的最末端都代表一个文件,而这个树的分叉处则是一个目录(directory, 相当于我们在windows界面中看到的文件夹)。在图1中看到的是整个的一个文件树。如果我们从该树中截取一部分,实际上也构成一个文件系统。
要找到一个文件,除了要知道该文件的文件名,还需要知道从树根到该文件的所有目录名。从根目录开始的所有途径的目录名和文件名构成一个路径(path)。比如说,我们在Linux中寻找一个文件,不仅要知道文件名还要知道完整路径,也就是绝对路径从根目录录,也就是树状结构的最顶端出发,经过一层层目录最终才看到文件。整个文件系统层层分级。
   1.Linux中显示文件目录结构通常用ls 来查看。
   ls +选项 + 【file】、
ls 的命令参数有很多可以通过查看 ls -help
   如: ls 显示所有文件
        ls -1 显示所有文件;按行显示的
        ls -l 显示所有文件具体信息,如创建者,创建时间,文件的读写权限列表等等
        ls -a 包含隐藏文件
        ls -R 目录递归
        ls -S 按从小到大顺序
        ls -A 列出除了“.”和“..”以外的文件
2 linux中可以通过查看路径来知道目录结构这就用到了tree
tree  -help
    tree -a 显示所有文件和目录 
         -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。 
         -C 在文件和目录清单加上色彩,便于区分各种类型。 
         -d 显示目录名称而非内容。 
         -D 列出文件或目录的更改时间。 
         -f 在每个文件或目录之前,显示完整的相对路径名称。 
         -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上””,”/”,”=”,”@”,”|”号。 
         -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。 
         -i 不以阶梯状列出文件或目录名称。 
         -I <范本样式> 不显示符合范本样式的文件或目录名称。 
         -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。 
         -n 不在文件和目录清单加上色彩。 
        -N 直接列出文件和目录名称,包括控制字符。 
    3.有时显示为了美观与整洁我们就用到了通配符
     
– 通配符,代表任意字符(0到多个)
        ? – 通配符,代表一个字符
     # – 注释
    / – 跳转符号,将特殊字符或通配符还原成一般符号
    | – 分隔两个管线命令的界定
    ; – 连续性命令的界定
    ~ – 用户的根目录
    $ – 变量前需要加的变量值
   ! – 逻辑运算中的”非”(not)
   / – 路径分隔符号
   >, >> – 输出导向,分别为”取代”与”累加”
   ‘ – 单引号,不具有变量置换功能
   ” – 双引号,具有变量置换功能
   ` – quote符号,两个“中间为可以先执行的指令
   () – 中间为子shell的起始与结束
   [] – 中间为字符组合
   {} – 中间为命令区块组合
[0-9]匹配数字范围
[a-z]同上字母范围
[A-z]字母范围
[wamg]匹配列表中的任何一个字符
[^wang]匹配列表中的所有字符以外的字符
  4 .touch命令
    touchu [option][file]
   5.复制文件和目录cp
如果目标不存在:新建的dest,并将src中内容填充至dest中
如果目标存在:将src中的内容覆盖到dest中
      -a 或 –archive     此参数的效果和同时指定”-dpR”参数相同
     -b 或 –backup      删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录
     -f 或 –force       强行复制文件或目录, 不论目的文件或目录是否已经存在
     -i 或 –interactive 覆盖文件之前先询问用户
     -l 或 –link        对源文件建立硬链接,而非复制文件
     -p 或 –preserve    保留源文件或目录的属性,包括所有者、所属组、权限与时间
     -P 或 –parents     保留源文件或目录的路径,此路径可以是绝对路径或相对路径,且目的目录必须已经丰在
     -r                  递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
     -R 或 –recursive   递归处理,将指定目录下的文件及子目录一并处理
 6. mv  移动和重命名文件
通常用的:
mv -i 交互式
mv -f 强制
本章中最重要的一个名命令rm 
如: rm -rf *
二 重定向和管道
所谓的重定向就:重新定义,并将其转向其他位置
如:ls -a >  abc.txt
这句就是指将ls 不再终端显示而是把内容保存在文件abc.txt中。
1.a重定向符号
>  输出重定向到一个文件或设备 覆盖原来的文件
>!   输出重定向到一个文件或设备 强制覆盖原来的文件
>>   输出重定向到一个文件或设备 追加原来的文件
<    输入重定向到一个程序
1.b标准错误重定向符号
 2>  将一个标准错误输出重定向到一个文件或设备 覆盖原来的文件  b-shell
 2>>  将一个标准错误输出重定向到一个文件或设备 追加到原来的文件
 2>&1  将一个标准错误输出重定向到标准输出 注释:1 可能就是代表 标准输出
 >&    将一个标准错误输出重定向到一个文件或设备 覆盖原来的文件  c-shell
 |&   将一个标准错误 管道 输送 到另一个命令作为输入
 2. 管道 
将一个命令传送给另一个命令 符号 |  来连接命令
如 命令1| 命令2|命令3…….
如  将一个文件中的字母大写变小写
 ls | tr ‘A-Z’ ‘a-z’ 
三.用户.组和权限
1.linux中每个用户必须属于一个组.
有 所有者 所在组 其他组 改变用户所在的组 
如 用户的创建    useradd 命令:
  -c comment 指定一段注释性描述。
  -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,能创建主目录。
  -g 用户组 指定用户所属的用户组。
  -G 用户组,用户组 指定用户所属的附加组。
  -s Shell文件 指定用户的登录Shell。
  -u 用户号 指定用户的用户号,如果同时有-o选项,则能重复使用其他用户的标识号。
如:useradd -d / usr wang -m wang
这个命令创建了一个用户网wang 其中 -d 和 -m选项用来为登录名wang 产生一个主目录/usr/wang 
2.删除用户
userdel 常用选项是 -r 主要是把用户和主目录一块删除
3.修改用户:
usermod
如 usermod -l 指定一个新用户
4. 主要的内容文件权限
文件属性操作:
chgrp :改变文件所属组
chown :改变文件拥有者
chmod :改变文件权限
4.1 文件的权限主要针对三类对象进行定义
owner:属主.u
group:属组 .g
other:其他.o
每个文件都设置三种权限 r w x
4.2  文件:目录
r :可使用文件查看类工具获取其内容  :可以使用ls查看此目录中文件列表
w :可以修改其内容 :可以在此目录中创建文件。也可以删除
x :可以把此文件提请内核启动为一个进程 :可以使用ls -l查看此目录 也可以cd
通常我们所说的两种方法 模式法  数字
r:4 w:2 x :1
例如一个文件的权限[-rwxrwxr-]
u=4+2+1   g=4+2+1   o=4+0+0
4.3 改变权限 .chmod
修改 一类用户的所有权限
u=  g =  o=

chomod u=rwx .g-w o+r
就是把 主赋值 rwx 组去掉w 其他组加上r
     

原创文章,作者:gd1479,如若转载,请注明出处:http://www.178linux.com/77070

(0)
上一篇 2017-05-28 17:39
下一篇 2017-05-29 15:00

相关推荐

  • for,while,until简介

    Shell(以Bash为例)中的循环语句一般有for、while、until这几种,偶尔还有写错语法的时候,这里结合实例来自己总结一下。也为今后使用提供一个快捷的资料获取渠道。 一、for循环语句 实例1.1 最基本的for循环: (传统的形式,for var in …) 代码如下: #!/bin/bashfor x in one two three fou…

    Linux干货 2016-08-22
  • sed命令应用详解

    sed应用详解 sed是文本处理处理工具“三大剑客”之一,它 是一种流编辑器,sed一次只处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(patternspace),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。sed不会修改原文件内容,除非你使用重定向存储输出。…

    Linux干货 2016-08-11
  • 设计模式 ( 十八 ) 策略模式Strategy(对象行为型)

    设计模式 ( 十八 ) 策略模式Strategy(对象行为型) 1.概述         在软件开发中也常常遇到类似的情况,实现某一个功能有多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能。如查找、排序等,一种常用的方法是硬编码(Hard Coding)在一个类中,如需要提供多种查找算…

    Linux干货 2015-07-28
  • python装饰器

    装饰器本质是一个装饰器函数,在不改变一个函数的函数体本身的情况下,实现函数体本身外其他的功能 1.实现一个装饰器 def  logger(fn):                         #装饰器函数必须只能传入一个参数,那就是被装饰函数     print(‘in’)     def wrapper(*args,**kwar…

    Linux干货 2017-10-23
  • rpm包管理与yum简要用法

    linux程序包管理 程序包:源代码 –> 目标二进制格式(二进制程序、库文件、配置文件、帮助文件)–> 组织成一个或有限的几个包文件 程序包管理器:        debian –> dpkg   以“.deb”结尾 &nb…

    Linux干货 2016-08-22
  • 私人定制—linux系统

    自制Linux系统: 1、分区并创建文件系统 [root@localhost6 ~]# fdisk  /dev/sdb 分两个必要的分区 /dev/sdb1对应/boot /dev/sdb2对应根/ 创建文件系统: [root@localhost6 ~]# mkfs.ext4 /dev/s…

    Linux干货 2016-09-26