您的位置:首页 > 运维架构 > Linux

linux文件系统、重定向及其常用命令总结

2016-07-29 11:20 603 查看
一、常用命令
touch命令:
touch [OPTION]... FILE...
-a:atime
-m:mtime
-c:ctime
access、modify、change三个时间戳的区别:
Access:访问时间,atime,通过cat、more等读取其内容
Modify:修改时间,mtime,改变文件的内容
Change:改变时间,ctime,改变文件的元数据,即修改权限、属组、属主等
使用stat命令可查看文件的三个时间戳如下:



[root@centos6 ~]# date
2016年 07月 31日 星期日 19:15:12 CST
[root@centos6 ~]# stat services
File: "services"
Size: 0         Blocks: 0          IO Block: 4096   普通空文件
Device: 803h/2051dInode: 5898398     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-07-22 14:40:03.027684266 +0800
Modify: 2016-07-22 14:23:57.227122945 +0800
Change: 2016-07-22 14:23:57.227122945 +0800
[root@centos6 ~]# touch -a services
[root@centos6 ~]# stat services
File: "services"
Size: 0         Blocks: 0          IO Block: 4096   普通空文件
Device: 803h/2051dInode: 5898398     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-07-31 19:15:44.446454193 +0800
Modify: 2016-07-22 14:23:57.227122945 +0800
Change: 2016-07-31 19:15:44.446454193 +0800
[root@centos6 ~]# touch -m services
[root@centos6 ~]# stat services
File: "services"
Size: 0         Blocks: 0          IO Block: 4096   普通空文件
Device: 803h/2051dInode: 5898398     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2016-07-31 19:15:44.446454193 +0800
Modify: 2016-07-31 19:16:26.497212950 +0800
Change: 2016-07-31 19:16:26.497212950 +0800
[root@centos6 ~]#
cp命令:
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
常用选项:
-r:递归复制目录及内容的所有内容
-a:归档
-d:表示不跟踪符号链接所指向的源文件,直接复制链接文件
-p:保持原文件的属性信息
-f:强制覆盖
-v:显示过程
-R:递归复制目录及内部的所有内容
-i:交互式
-preserv=[…] mode:权限  ownership:属组 timestramp:时间戳

1、 如果目标文件不存在,则创建目标文件把源文件的内容复制到新建的目标文件中。



2、 如果目标文件存在,则提示覆盖目标文件的内容

如下则表示不提示用户是否覆盖:\cp chen.txt /testdir/test /usr/bin/cp chen.txt /testdir/test
mv命令:
常用选项:
-i:交互式
-f:强制
rm命令:
常用选项:
-i:交互式
-f:强制
-r:递归


tree命令:
-d: 只显示目录
-L level:指定显示的层级数目 tree –L 2 /etc/
-P pattern: 只显示由指定pattern匹配到的路径
-p:显示权限





mkdir 创建目录
-p: 存在于不报错,且可自动创建所需的各目录;
-v: 显示详细信息
-m MODE: 创建目录时直接指定权限;
rmdir 删除空目录
-p: 递归删除父空目录
-v: 显示详细信息
rm -r 递归删除目录树

文件可以包含多种类型的数据
检查文文件类型,然后确定适当的开放命令或应用程序使用
file [options]<filename>...
Option:
-b列出文件辨识结果时,不显示文件名称。
-c详细显示指令执行过程,便于排错或分析程序执行形
-f列出文件中文件名的文件类型
-F使用指定分隔符号替换输出文件名后默认的”:”分隔符
-i输出mime类型的字符串
-L查看对应软链接对应文件的文件类型
-z尝试去解读压缩文件的内容 --help显示命令在线帮助
二、重定向
标准输入输出:
程序:指令+数据 读入数据:Input输出数据:Output
打开的文件都有一个fd: file descriptor (文件描述符)
Linux给程序提供三种I/O设备
标准输入(STDIN)-0 默认接受来自键盘的输入
标准输出(STDOUT)-1 默认输出到终端窗口
标准错误(STDERR)-2 默认输出到终端窗口
I/O重定向:改变默认位置
支持的操作符号包括:
> 把输出重定向到文件
2> 把错误输出重定向到文件
&> 把所有输出重定向到文件
> 文件内容会被覆盖
# set -C: 禁止将内容覆盖已有文件,但可追加
强制覆盖:>| # set +C: 允许覆盖
>> 原有内容基础上,追加内容
> 文件内容会被覆盖
# set -C: 禁止将内容覆盖已有文件,但可追加 强制覆盖:>|
# set +C: 允许覆盖
>> 原有内容基础上,追加内容
(1)如何创建/testdir/dir1/x, /testdir/dir1/y,/testdir/dir1/x/a, /testdir/dir1/x/b, /testdir/dir1/y/a, /testdir/dir1/y/b
mkdiri –p /testdir/dir1/{x/{a,b},y/{a,b}}
(2)如何创建/testdir/dir2/x, /testdir/dir2/y,/testdir/dir2/x/a, /testdir/dir2/x/b
mkdir -pv /testdir/dir2/{x/{a,b},y}
(3)如何创建/testdir/dir3, /testdir/dir4,/testdir/dir5, /testdir/dir5/dir6, /testdir/dir5/dir7
mkdir –p /testdir/dir{3,4,5/dir{6,7}} mkdir –p /testdir/{dir3,dir4,dir5/{dir6,dir7}}(4)使用别名命令,每日将/etc/目录下所有文件, 备份到/testdir/下独立的新目录下,并要求新目录 格式为 backupYY-mm-dd ,备份过程可见 alias cp=’cp –av /etc /testdir/backup`date +%F`’ (5)先创建/testdir/rootdir目录,再复制/root所有 下文件到该目录内,并要求保留原有权限 cp /root/ -R --preserv=mode/testdir/rootdir 或者:cp -av /etc /testdir/backup$(date)

本文出自 “叫醒你的不是闹钟而是梦想” 博客,请务必保留此出处http://purify.blog.51cto.com/10572011/1831626
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: