创建连接命令

参考:ln -s创建软连接
ln -s
ln -s source_file softlink_file
【硬连接】
硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
【软连接】
另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

2>&1 (标准输出、标准错误输出)

  • 试想2>1代表什么,2与>结合代表错误重定向,而1则代表错误重定向到一个文件1,而不代表标准输出;
    • 换成2>&1,&与1结合就代表标准输出了,就变成错误重定向到标准输出。
  • 为何2>&1要写在后面
    • command >file 2>&1 首先是command > file将标准输出重定向到file中, 2>&1 是标准错误拷贝了标准输出的行为,也就是同样被重定向到file中,最终结果就是标准输出和错误都被重定向到file中。
    • command 2>&1 >file 2>&1 标准错误拷贝了标准输出的行为,但此时标准输出还是在终端。>file 后输出才被重定向到file,但标准错误仍然保持在终端。
    • ls xxx >out.txt 2>&1 , 实际上可换成 ls xxx 1>out.txt 2>&1 ;重定向符号>默认是1,错误和输出都传到out.txt了。

下面是一些例子:

  • nohup /mnt/Nand3/H2000G >/dev/null 2>&1 &

其中0 表示键盘输入 1表示屏幕输出 2表示错误输出.把标准出错重定向到标准输出,然后扔到/DEV/NULL下面去。通俗的说,就是把所有标准输出和标准出错都扔到垃圾桶里面。

  • command >out.file 2>&1 &

command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。 2>&1 是将标准出错重定向到标准输出,这里的标准输出已经重定向到了out.file文件,即将标准出错也输出到out.file文件中。最后一个& , 是让该命令在后台执行。

tee命令

tee命令主要被用来向standout(标准输出流,通常是命令执行窗口)输出的同时也将内容输出到文件。
详见:tee命令

  1. ping baidu.com | tee ping-baidu.log #输出到控制台的同时,将内容保存到ping-baidu.log文件

打包目录下所有文件

  • zip 压缩方法:压缩当前的文件夹: zip -r ./xahot.zip ./* -r表示递归
  • tar -zcvf 打包后生成的文件名全路径 要打包的目录

find 文件查找

  • 查找指定后缀的文件:find . -name "*.html"(-type f)。
  • -a即and:连接两个不同的条件(两个条件必须同时满足),-o即or,-not,对条件取反。
  • 查找完执行的action

-print //默认情况下的动作
-ls //查找到后用ls 显示出来
-ok [commend] //查找后执行命令的时候询问用户是否要执行
-exec [commend] //查找后执行命令的时候不询问用户,直接执行

  • 删除查找到的超过30天没有访问过文件:find /tmp -atime +30 –exec rm –rf {} \
    • 我们也可以使用xargs或awk来对查找到的文件进一步操作