我有一个不能正常工作的bash脚本,我是这种编码的新手。任何建议或帮助都会很棒。
我正尝试在PuTTy平台上使用新用户更改旧用户的电子邮件地址。但是并非所有目录都有某个文件,我认为我的IF语句可能存在问题。这是我尝试使用的脚本:
#!/bin/bash
#set -x
for dirs in *
do
echo $dirs
cd $dirs/
if [ -d "Seadont"]
then
sed -i 's/USER1/USER2/g'
ls
fi
done
我的结果不正确。
答案 0 :(得分:1)
试试这个:
#!/bin/bash
#set -x
for dirs in * ;do
echo $dirs
if [ -d "Seadont"] ;then
sed -i.bak 's/USER1/USER2/g' $dirs
fi
done
请注意,如果“$ dirs”上有空格,则无效。如果有的话我可以提出更好的解决方案,但我需要知道当前的目录。