Shell 向帐户创建脚本添加检查
我继承了以下脚本在OSX中创建帐户 我想在其中包含一个检查,首先检查目标上是否已经存在具有该名称的帐户,如果已经存在,则回显消息“帐户存在”,然后不采取其他操作,然后继续 典型的/tmp/list.txt仅由短名称组成,即:Shell 向帐户创建脚本添加检查,shell,Shell,我继承了以下脚本在OSX中创建帐户 我想在其中包含一个检查,首先检查目标上是否已经存在具有该名称的帐户,如果已经存在,则回显消息“帐户存在”,然后不采取其他操作,然后继续 典型的/tmp/list.txt仅由短名称组成,即: jdoe brianx peterm smithd 非常感谢你的帮助 #! /bin/sh if [ $# -ne 1 ] then echo mkhdir: Did not find required argument: group name
jdoe
brianx
peterm
smithd
非常感谢你的帮助
#! /bin/sh
if [ $# -ne 1 ]
then
echo mkhdir: Did not find required argument: group name
echo Usage: mkhdir \[group\]
exit 1
fi
for i in `cat /tmp/list.txt` ; do
if [ ! -r /Volumes/UserStorage/Users/$i ]
then
mkdir /Volumes/UserStorage/Users/$i
mkdir /Volumes/UserStorage/Users/$i/Backups
fi
chown -R $i:$1 /Volumes/UserStorage/Users/$i
chmod -R 700 /Volumes/UserStorage/Users/$i
find /Volumes/UserStorage/Users/$i -type d -exec chmod 701 {} \;
done
[!-r…]
的测试不会告诉您/Volumes/UserStorage/Users/$i是否是目录。使用
for i in `cat /tmp/list.txt` ; do
if [ ! -d /Volumes/UserStorage/Users/$i ] ; then
mkdir /Volumes/UserStorage/Users/$i
else
echo "/Volumes/UserStorage/Users/$i already exists" >&2
fi
if [ ! -d /Volumes/UserStorage/Users/$i/Backups ] ; then
mkdir /Volumes/UserStorage/Users/$i/Backups
else
echo "/Volumes/UserStorage/Users/$i/Backups already exists" >&2
fi
chown -R $i:$1 /Volumes/UserStorage/Users/$i
chmod -R 700 /Volumes/UserStorage/Users/$i
find /Volumes/UserStorage/Users/$i -type d -exec chmod 701 {} \;
done
701
任何人都知道在最后的查找中701
的目的是什么。。。chmod
IHTH对
[!-r…]
的测试不会告诉您/Volumes/UserStorage/Users/$i是否为目录。使用
for i in `cat /tmp/list.txt` ; do
if [ ! -d /Volumes/UserStorage/Users/$i ] ; then
mkdir /Volumes/UserStorage/Users/$i
else
echo "/Volumes/UserStorage/Users/$i already exists" >&2
fi
if [ ! -d /Volumes/UserStorage/Users/$i/Backups ] ; then
mkdir /Volumes/UserStorage/Users/$i/Backups
else
echo "/Volumes/UserStorage/Users/$i/Backups already exists" >&2
fi
chown -R $i:$1 /Volumes/UserStorage/Users/$i
chmod -R 700 /Volumes/UserStorage/Users/$i
find /Volumes/UserStorage/Users/$i -type d -exec chmod 701 {} \;
done
701
任何人都知道在最后的查找中701
的目的是什么。。。chmod
谢了,谢了!我在回音线上加了一个结束引号,效果非常好 已完成的脚本片段:
for i in `cat /tmp/list.txt` ; do
if [ ! -d /Volumes/UserStorage/Users/$i ] ; then
mkdir /Volumes/UserStorage/Users/$i
else
echo "/Volumes/UserStorage/Users/$i already exists" >&2
fi
if [ ! -d /Volumes/UserStorage/Users/$i/Backups ] ; then
mkdir /Volumes/UserStorage/Users/$i/Backups
else
echo "/Volumes/UserStorage/Users/$i/Backups already exists" >&2
fi
chown -R $i:$1 /Volumes/UserStorage/Users/$i
chmod -R 700 /Volumes/UserStorage/Users/$i
find /Volumes/UserStorage/Users/$i -type d -exec chmod 701 {} \;
done
@谢了,谢谢!我在回音线上加了一个结束引号,效果非常好 已完成的脚本片段:
for i in `cat /tmp/list.txt` ; do
if [ ! -d /Volumes/UserStorage/Users/$i ] ; then
mkdir /Volumes/UserStorage/Users/$i
else
echo "/Volumes/UserStorage/Users/$i already exists" >&2
fi
if [ ! -d /Volumes/UserStorage/Users/$i/Backups ] ; then
mkdir /Volumes/UserStorage/Users/$i/Backups
else
echo "/Volumes/UserStorage/Users/$i/Backups already exists" >&2
fi
chown -R $i:$1 /Volumes/UserStorage/Users/$i
chmod -R 700 /Volumes/UserStorage/Users/$i
find /Volumes/UserStorage/Users/$i -type d -exec chmod 701 {} \;
done
tnx,明白了。
&2
向std err发送错误消息,std err是“标准”:-。祝你好运,tnx,明白了。&2
向std err发送错误消息,std err是“标准”:-。祝你好运