qw3206 发表于 2014-01-16 21:04

SHELL 脚本问题,谢谢

我想将0 0 0 输出到HOME下文件名带1的文件下为什么执行不了?
#!/bin/bash

home="/home"

echo "0 0 0">$home/1*
帮忙看一下,谢谢了!

MMMIX 发表于 2014-01-16 21:32

本帖最后由 MMMIX 于 2014-01-16 21:33 编辑

回复 1# qw3206


    如果 /home/1* 只匹配到一个文件,这么写是没问题的;如果它匹配到零个或多个文件,那么你就需要个循环了。

BTW,你就不能想个有点信息量的标题么?

qw3206 发表于 2014-01-16 22:30

好吧标题是我的失误,下次注意 。可以告诉我具体如何来循环吗?
谢谢!回复 2# MMMIX


   

MMMIX 发表于 2014-01-16 22:35

qw3206 发表于 2014-01-16 22:30 static/image/common/back.gif
好吧标题是我的失误,下次注意 。可以告诉我具体如何来循环吗?
谢谢!回复 2# MMMIX

找本入门书来看看吧。

qw3206 发表于 2014-01-16 22:51

回复 4# MMMIX
可以写一个给我吗?

   

古丁高手 发表于 2014-01-18 04:15

#!/bin/bash
cd /home
home="/home"
for string in 1*
do
      echo "0000" >>$home/$string
done
~
可以帮到你!呵呵

古丁高手 发表于 2014-01-18 04:17

注意正则就可以做到了。回复 6# 古丁高手


   

MMMIX 发表于 2014-01-18 07:38

古丁高手 发表于 2014-01-18 04:17 static/image/common/back.gif
注意正则就可以做到了。回复 6# 古丁高手

像 `1*' 这种是 shell 的文件名扩展,不是正则表达式(虽然看起来像)。

古丁高手 发表于 2014-01-18 20:23

是的,谢谢!回复 8# MMMIX


   

qw3206 发表于 2014-01-20 10:43

谢谢各大神的赐教
页: [1]
查看完整版本: SHELL 脚本问题,谢谢