基础指令的使用篇3 Linux版

/

/boot

/bin

/sbin

/lib.modules

/lib64

/etc/redhat-release

/etc/centos-release

/home/zczx

/mnt

/media

/misc

/proc/meminfo

/proc/cpuinfo

/proc/partition

/sya

/opt

/tmp

/usr/local/

/usr/share/man

/usr/share/doc

/usr/share/dict

/var/log/

/var/www

/var/ftp

/var

/dev/

sda,sda1

/dev/null

/dve/zero

/dve/random

/dve/tty

/srv

/root

wKioL1edZWbhpfqIAAHgo89Ej8A250.png-wh_50

文件通配符

* 匹配零个或多个字符

? 匹配任何单个字符

~ 当前用户家目录

~+ 当前工作目录 

~- 前一个工作目录





[:digit:]任意数字,相当于0-9

[:lower:]任意小写字母

[:upper:]任意大写字母

[:alpha:]任意大小写字母

[:alnum:]任意数字或字母

[:space:]空格

[:punct:]标点符号



ls /var/l*[[:digit:]]*[[:lower:]]

wKiom1edZC2geFV4AAD_0a5OtWI030.png-wh_50

ls -d /etc/[0-9]*[^0-9]

ls -da /etc/*.d

wKioL1edZDzAZbBUAABhWtpotoY419.png-wh_50

ls -da [nmrp]*.conf



touch命令


-a  改变atime

-m  改变mtime

-c  如果文件存在就刷新时间,如果没有也不创造

-t  

touch -d yesterday f2 f2文件昨天的时间,Ctime不改变 




 cp指令

   单一文件,源文件复制在一个没有的目录,就会在生成一个以不存在目录为名字的复制文件。


   复制目录有同一样名字的文件,root用户提示你是否覆盖,普通用户不提示,因为root 使用的是别名 cp -i

cp -n 如果有相同的文件则不覆盖

多个源文件cp必须到真实存在的目录


目录要使用-r选项


-i: 交互式

-r,-R:递归复制目录及内部的所有内容

-a:归档,-dR–preserv=all

-d:不复制原文件,只复制连接名

–preserv 

           mode:权限

           ownership:属主属组

           timestamp:时间

           all:所有保留

           links

           xattr

           context

           all


-p:等同–preserv=mode,ownership,timestamp

-V:备份过程可见



cp –preserv=mode -R



alias

更改之后永久有效要放在配置文件中

仅对当前用户:~/.bashrc


对所有用户都有效:~/etc/bashrc



移动和重名名文件


mv core.3106 /testdir/

-i:询问你是否移动

-f:强制移动


rm


-f:强制删除

-r:递归(一个一个删除)

root 用户删除会询问你是否删除

普通用户只会直接删除

#rm -rf /  7版本之后是会提示你操作危险

7版本之后要使用 rm -rf /*  




tree 目录树

     -d: 只显示目录

     -L level: 指定显示的层级数目

     -p pattern: 只显示指定pattern匹配到的路径

wKiom1edZcDjyp38AAAsshb6O8g915.png-wh_50

mkdir 创建目录

     -p:存在于不报错,且可以制动创建所需的各目录;

     -v:显示详细信息

     -m MODE:创建目录时直接指定权限


rmdir 删除空目录

      

      -p:递归删除父空目录

      -V:显示详细信息



ls -i

inode 号

在一个分区中节点号是唯一的,在不同的分区中可以节点号相同。

wKiom1edZ4yz3tGmAACYQVGg6kA878.png-wh_50


df -i 可以查看各分区的inode 号的多少

df 看各分区的容量

wKioL1edZ8KBVTq2AAA91kLSWzs915.png-wh_50


ln 链接

ln aa bb 硬链接aa到bb ,inode号相同,文件内容大小相同,修改也相同。

如果删除其中一个,另外一个还存在。如果都删去,则数据块数据还能存在,但如果有新的数据写入,就会删除旧的数据,加入一个新的链接可以还原出旧的数据。


数据分为:元数据 (放在inode table),数据内容(放在block 数据快)

inode (index node)不表中包含文件系统所有文件列表

一个节点是在一个表项,包含有关文件的信息(元数据),包括:      

           文件类型,权限,UID,GID

           连接数目(指向这个文件名路径名称个数)

           该文件的大小和不同的时间戳

           指向磁盘上文件的数据块指针

           有关文件的其他数据

  每一个分区都有一个 inode table 

  inode entrv 条目  每一条记录里面都记录了元数据的数据块的指针共有12个直接指针,最后指针指向数据,一共12X4K=48K  

   block 大小为4K   每一条指针都指向一个文件块

双重指针 :在第13个直接指针中指向一个文件块,每一个文件块里面有1024个指针,最后指针指向数据,一个指针4K。

    一重指针:1024X4K= 4M  

三重指针:在第13个直接指针所指向的文件块中,1024个文件块指针在分别再指向1024个文件块,最后指针指向数据,里面的指针还是4K。

    二重指针: 1024X1024X4K= 4G

    三重指针: 1024X1024X1024X4K= 4T

    隔离多少层到数据就是多少层指针,都叫间接指针。

wKiom1edZXvzduVaAALMf--Imhs566.png-wh_50


硬链接不能跨分区,硬链接不能连目录,但是文件目录可以增加链接数目,每个子目录下都有一个.. 和本身目下有一个.

-s 进行软链结(symbolic link)

ln -s f1 f2

ll f1 f2

         f2软链接到f1 


软连接跨分区要写明软连接的路径

     原始文件相对路径:相对于软连接文件的路径,而不是相对于当前工作目录的路径

ln -sv /root/f1 testdir/f111

    原始文件的路径    软链接


file 检查文件类型,确定文件内容

file -b Desktop/  列出文件辨识结果,不显示文件名称

     -c           详细显示指令执行过程,便于排错或分析

     -f           列出文件中文件名的文件类型

     -F使用指定分隔符号替换输出文件名后默认的“:”分隔符号

     -i           输出mime类型的字符串

     -L           查看对应软链接对应文件类型

     -z           尝试去解读压缩文件的内容

     –help       显示命令在线帮助



标准I/O和管道


程序:命令+数据

     读入数据:Input

     输出数据:Output


打开的文件都有一个fd


Linux给程序提供三种I/O设备

标准输入 -0  默认来自键盘的输入

标准输出 -1  默认输出到终端窗口

标准错误 -2  默认输出到终端窗口、

重定向:

ls > /dve/pts/2   将显示输出到pts2的终端中

ls > ls.log    将显示的输出保存到ls.log文件中

>> f 追加不覆盖



ls . /xxx > /testdir/fi 2> /testdir/f1

对的指令输出到fi 错的输出到f1


                                 >>

set -C 禁止将内容覆盖已有文件,可以追加强制覆盖

set +C 允许覆盖


ll /dve/null

ls xx /testdir/ &> /tmp/all.log

ls xx /testdir/ 2>&1 / > /tmp/all.log

                &>>


cat f1 ls.log >f3

将f1 和ls.log合拼放在f3


tr命令

tr-转换或删除字符



mail -s +用户名字 S表示标

.   用来mail的结束

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

(0)
swzczxswzczx
上一篇 2016-08-04 14:41
下一篇 2016-08-04 14:41

相关推荐

  • 2018近期it运维大会合集,这五场值得关注!

    17年,我们不仅看到Google、Facebook、Amazon、LinkedIn、Netflix、Airbnb等互联网巨头在与DevOps亲密接触,传统软件公司如Adobe、IBM、Microsoft、SAP等,亦或是网络业务非核心的苹果、沃尔玛、索尼影视娱乐、星巴克等都在采用DevOps,更看到了国内一大片企业开始钟情于此。

    2018-03-01
  • linux基础知识:计算机的组成及其功能

    摘要:
    1. 描述计算机的组成及其功能。
    2. 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
    3. 描述Linux的哲学思想,按照自己的理解对其解释性描述。
    4. 说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、……等命令使用,配合相应实例阐述。
    5. 如何获取帮助信息,描述man文档章节划分。
    6. 罗列发行版基础目录名称命名法则及功用规定。

    2017-12-03
  • 分布式系统的事务处理

    当我们在生产线上用一台服务器来提供数据服务的时候,我会遇到如下的两个问题: 1)一台服务器的性能不足以提供足够的能力服务于所有的网络请求。 2)我们总是害怕我们的这台服务器停机,造成服务不可用或是数据丢失。 于是我们不得不对我们的服务器进行扩展,加入更多的机器来分担性能上的问题,以及来解决单点故障问题。 通常,我们会通过两种手段来扩展我们的数据服务: 1)数…

    Linux干货 2016-08-15
  • Linux手动编译源代码文件

    一、简介     Linux系统上程序包安装的方式多种多样,一般来说可通过rpm包安装、yum在线安装等方式实现。但有时候为了实现某种功能,而这种功能在通常情况下又不是太常用或是因为其他原因,不能通过yum下载安装或在网上没有找到rpm包,只是找到了程序安装包的源代码的话,这种情况下我们就可以对源代码直接进行编译安装,以便解决这种临时需求…

    Linux干货 2015-09-26
  • Linux中查看文本工具

    一、文件查看 文件查看命令:cat,tac,rev,我们重点详解cat命令 cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令 我们可以理解cat命令是复制标准输入到标准输出 cat命令选项: cat [OPTION]… [FILE]… -E:显示行结束符$   &nbs…

    Linux干货 2016-08-07
  • 第二周练习题

    创建/tmp目录下的:a_c,a_d,b_c,b_d; ~]# mkdir -pv /tmp/{a_{c,d},b_{c,d}} 创建如下目录: ~]# mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,…

    Linux干货 2016-11-01