LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1181|回复: 5

求一个 脚本,大家帮帮忙!

[复制链接]
发表于 2010-2-8 13:12:07 | 显示全部楼层 |阅读模式
有一个文本文件,每一行都是一个文件的全路径(例如:/usr/share/doc/111).
想要一个脚本,读取这个文本文件,在当前目录建立这个文本文件每行里所指文件的软链接。
发表于 2010-2-8 13:51:55 | 显示全部楼层
实现方法应该有很多种吧,

  1. #!/bin/bash
  2. for i in `cat filename`;do
  3. basename=`basename $i`
  4. if [ ! -f $i ];then
  5.         echo "file $i not exists"
  6.         return 1
  7. else
  8.         if [ -f $basename ];then
  9.                 newname=$basename.`date +%s`
  10.                 echo "$basename alread exists, change it to $newname"
  11.                 ln -s $i $newname
  12.         else
  13.                 ln -s $i
  14.         fi
  15. fi
  16. done

复制代码
回复 支持 反对

使用道具 举报

发表于 2010-3-19 16:03:05 | 显示全部楼层
如果是不考虑同名冲突问题

用: awk 'NF{print "ln -s "$0" ."}' datafile
回复 支持 反对

使用道具 举报

发表于 2010-3-19 16:09:00 | 显示全部楼层
  1. while read fn; do
  2.   ln $fn
  3. done < datafile
复制代码
回复 支持 反对

使用道具 举报

发表于 2010-3-25 09:04:06 | 显示全部楼层
一个比一个强大。
回复 支持 反对

使用道具 举报

发表于 2010-4-2 14:47:15 | 显示全部楼层
2楼的return 1 是返回那里?

对return不是很熟悉
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表