美文网首页
无标题文章

无标题文章

作者: bab3d90521db | 来源:发表于2017-11-19 22:08 被阅读0次

    alias rm='mv -t /app/'

    tree    显示目录树

    -  d    只显示目录

    -  L    层数

    mkdir    创建目录

    -p    自动创建所需的个目录

    -v    显示详细信息

    -m    创建目录是直接指定权限

    rmdir    删除空目录

    -p    递归的删除父空目录

    -v    显示详细信息

    rm  -r    递归删除目录树

    df    用于显示磁盘分区上的可使用的磁盘空间

    -h    以KB以上的单位来显示

    -a    查看全部文件系统

    -T    文件系统类型

    -i    列出inode信息而不是块使用情况

    watch    定期执行程序,显示全屏输出

    -n    指定更新间隔

    ln目标链接名字文件之间建立链接(硬链接)

    -s    使符号链接,而不是硬链接(软链接)

    stat选项文件名显示文件或文件系统状态

    shred选项文件名覆盖文件以隐藏其内容,并可选地删除它

    -n    覆盖次数,默认3次

    -u    覆盖后删除

    -v    查看过程

    -z    用零添加最后的覆盖来隐藏粉碎

    例:shred  -zvun  10

    readlink      查看链接文件路径

    file文件名确定文件类型 (看首部信息,不关心文件后缀)

    -b    不显示文件名

    -f    把需要处理的东西存在一个文件,读取文件的内容,适合批处理

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

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

    dd  if=/dev/zero of =/boot/bigfile bs=1M count=500  可控的添加文件内容

    lsof  |  grep deleted  查看哪些文件已删除但未释放空间

    killall进程关掉进程

    ps  aux|grep  vim    查看进程

    ls  -il    显示节点编号

    echo  f{1..50000} | xargs touch    创建大批量文件

    watch  -n 1 -df -i

    通常rm删除大文件未必会立即释放空间,所以建议先使用  >  清空文件内容,在使用rm 删除文件。

    Centos 6使用的文件系统 ext4  Centos7使用的文件系统 xfs

    文件分为两部分元数据(文件的属性 )和用户数据(即文件数据块,数据块是记录文件真是内容的地方)。元数据中的inode号才是文件的唯一标识而非文件名,文件名(存在于数据块中)只是方便人的使用和记忆。

    数据的位置:

    直接指针(有12个,0-11)直接指向数据块(4K),数据低于48K可以通过直接指针直接找到

    间接指针:直接指向的是指针块(4K),消耗4个字节来描述数据块的位置

    节点编号会被重复利用

    centos6 根的节点编号是 2  (挂载点都是为2)

    centos7的节点编号是64

    每个分区分配自己的节点编号,不同分区节点编号可以一样,同一个文件不能拥有不同的节点编号

    文件名不在节点表里,存在于文件夹的文件内容中(数据块中)

    链接数:一个节点编号对应的有几个文件名

    删除文件只是删除节点信息,并没有把数据删除

    硬链接:可以存放在同一目录上,也可以在不同目录上(不允许跨分区创建)

    软链接大小是链接路径的大小

    软链接和硬链接区别:

    1.本质不同:硬链接是同一个文件。软链接不是同一个文件

    2.删除:删除一个硬链接的文件并不影响有相同inode的文件使用。删除软链接的原始文件则软链接失效

    3.创建:链接创建完成连接数会增加。软链接则不会

    4.跨分区:硬链接不可以跨分区创建。软链接可以

    5.目录:硬链接不 可以创建目录。软链接可以

    软链接:源文件的路径是相对路径,一定是相对于软链接文件的路径,而非相对于当前工作目录的路径

    程序:指令+数据

    打开的文件都有一个fd: file descriptor (文件描述符)

    I/O重定向:改变默认

    STDOUT和STDERR可以被重定向到文件

    命令 操作符号 文件名

    支持的操作符号包括:

    >      把STDOUT重定向到文件

    2>      把STDERR重定向到文件

    &>      把所有输出重定向到文件

    >      文件内容会被覆盖

    set –C 禁止将内容覆盖已有文件,但可追加

    >| file 强制覆盖

    set +C 允许覆盖

    >> 原有内容基础上,追加内容

    <    标准输入重定向

    /dev/null    垃圾箱

    ls /misc/

    systemctl enable autofs ; systemctl start auttofs      让auttofs可用,auttofs可用了 /misc/cd  才可用

    ls  -l  /proc/进程号/fd/

    ():合并多个程序的STDOUT

    例如:

    (ls;pwd;hostname) >> f3.log  多条命令同时重定向一个文件中

    (errcmd;hostname) > /app/true.log  2> /app/error.log    正确的信息和错误信息分开重定向

    (errcmd;hostname) > /app/true.log  2>&1    等同于    &>    等同于下面

    ((errcmd;hostname) 2>&1) > /app/true.log    错的变成对的,在重定向到文件

    (echo error 1>&2) 2> /dev/nul    对的变成错的,错的重定向到 垃圾箱

    linux和windows的文本格式不一样,linux一个符号来标识换行,Windows两个符号来标识 (0d  0a)

    tr    转换和删除字符

    -c    取补集(除了)

    例:tr  -sc  'a'    除了a全都压缩

    aaabbbcccaaa

    aaabcaaa

    例:tr  -dc  'a'    除了a全删,ctrl+d才能结束

    abcabcabc

    aaa

    例:tr  -dc  ‘a\n’    保留a和回车

    -d    删除

    -s    连续重复字符会被压缩(2个以上)

    -t

    \t    表示tab键

    \n    换行

    \r    表示回车键

    例:tr -d '\n'  <  f1    删除回车并重定向 f1

    tr  '\n' ' '  <  f1    换行替换成空格重定向 f1

    tr -d '\r' < win.txt > newin.txt    windows文本格式转换为linux

    dos2unix    windows文本格式转换为linux

    unix2dos    linux文本格式转换为windows

    cat  -A win.txt(windows文本)

    a^M$

    b^M$

    c^M$

    ^M$

    ^M$

    例:

    hexdump  -c win.txt

    mail  -s邮件标题  收件人发邮件

    mail    接受邮件    输入主题名查看

    单行重定向,

    多行重定向 <<

    例:cat  > f1 << EOF(end of file)    统一提交

    aaabbbbccc

    bbbbbccccc

    EOF

    命令 | 命令 |命令  管道符号(只能处理标准输出)

    例: ls | tr 'a-z' 'A-Z'

    F1

    F2

    例: who | tr 'a-z' 'A-Z'

    ROOT    PTS/0        2017-11-14 17:33 (192.168.27.1)

    ROOT    PTS/1        2017-11-14 21:32 (192.168.27.1)

    LIYIHANG TTY2        2017-11-14 21:27

    例:error  2>&1 | tr 'a-z' 'A-Z'  (通过 2>&1把错误输出转换为正确输出)

    BASH: ERROR: COMMAND NOT FOUND...

    error  |& tr 'a-z' 'A-Z'  等同    error  2>&1 | tr 'a-z' 'A-Z'

    例:error  |& tr 'a-z' 'A-Z' | tr -d 'O'

    BASH: ERRR: CMMAND NT FUND...

    例:ls -R /etc/ | more    管道符号配合 more 分段查看

    tee    重定向到多个目标    (因为屏幕上可以显示,所以可以做第二次处理)

    -s    追加到给定的文件,不要覆盖

    例:who | tee  f1 | tr -d r

    oot    pts/0        2017-11-14 17:33 (192.168.27.1)

    oot    pts/1        2017-11-14 21:32 (192.168.27.1)

    liyihang tty2        2017-11-14 21:27

    例:who | tee who.out |grep liyihang        grep(搜索)

    liyihangtty2        2017-11-14 21:27

    删除Windows文本文件中的‘^M’

    相关文章

      网友评论

          本文标题:无标题文章

          本文链接:https://www.haomeiwen.com/subject/azapvxtx.html