shell实例(十七) ----find和xargs命令

来源:互联网 发布:程序员做生意 编辑:程序博客网 时间:2024/04/30 09:06

1.分析单词出现的频率

#! /bin/sh
ARGS=1
E_BADARGS=65
E_NOFILE=66

if [ $# -ne "$ARGS" ]
then
  echo "Usage: `basename $0` filename"
  exit $E_BADARGS
fi

if [ ! -f "$1" ]
then
 echo "File /"$1/" does not exist."
 exit $E_NOFILE
fi

sed -e 's//.//g' -e 's//,//g' -e 's/ //
/g'  "$1" | tr 'A-Z' 'a-z' | sort |uniq -c | sort -nr
exit 0

 

2.cut命令

#! /bin/sh
FILENAME=/etc/passwd
for user in $(cut -d: -f1 $FILENAME)
do
  echo $user
done

exit 0

 

3.确定文件时脚本

#! /bin/sh
FILENAME=/etc/passwd
for user in $(cut -d: -f1 $FILENAME)
do
  echo $user
done

exit 0

 

4.产生10进制随机数

#! /bin/sh
head -c4 /dev/urandom | od -N4 -tu4 | sed -ne '1s/.* //p'
exit 0

 

5.在脚本中模拟grep行为

#! /bin/sh
E_BADARGS=65
if [ -z "$1" ]
then
  echo "Usage:`basename $0` pattern"
  exit $E_BADARGS
fi

echo

for file in *
do
  output=$(sed -n /"$1"/p $file)
  if [ ! -z "$output" ]
  then
     echo -n "$file: "
     echo $output
  fi

  echo
done

echo
exit 0

原创粉丝点击