shell练习题,shell基础学习
2017-09-12 14:15
435 查看
1、找出当前目录下的大于10k的文件,并把它移动到./tmp文件下面
for file in `ls -ltr | awk '$5 > 10240 {print $9}'`
do
mv $file ./tmp
done
2、修改out文件第3行的文件中tset为test (-i可修改源文件)
cat out | sed '3s/tset/test/g'
sed -i '3s/tset/test/g' out
3、打印第3行第二列
cat out | head -n3 | tail -n1 | awk '{print $2}'
cat out | sed -n '3p' | awk '{print $2}'
cat
out | sed -n '3p' | cut -d " " -f2
4、sed、awk、grep支持正则表达式
sed、grep支持一般正则,awk和egrep支持拓展正则。
但是其实sed和grep也是变相支持拓展正则的,只不过需要转义而已。
eg:
查找八位日期的文件夹
ls | egrep '^[0-9]{8}$'
ls | grep '^[0-9]\{8\}$'
ls | sed '/^[0-9]/{8/}$/'
5、删除除了最新的8位目录其他的目录
ls
| sed '/^[0-9]/{8/}$/' | sed '$d' | xargs rm -rf
6、打印出第三列大于1的用户
cat /etc/passwd | awk -F ':' '$3>1 {print $3 "\t" $1}'
7、将:替换成|
sed -i "s/:/\|/g" wh.txt
cat
wh.txt | sed "s/\|/:/g"
8、打印查询空行的行号
grep -n ^$ log
9、查询abc结尾的行
grep -n abc$ log
10、1j加到10的结果
for((i=1;i<=10;i++))
do
j=`expr $j + $i`
done
echo $j
11、找出当前目录文件大于50k,小于100k的文件
find . -size +5 -size -1099
for file in `ls -ltr | awk '$5 > 10240 {print $9}'`
do
mv $file ./tmp
done
2、修改out文件第3行的文件中tset为test (-i可修改源文件)
cat out | sed '3s/tset/test/g'
sed -i '3s/tset/test/g' out
3、打印第3行第二列
cat out | head -n3 | tail -n1 | awk '{print $2}'
cat out | sed -n '3p' | awk '{print $2}'
cat
out | sed -n '3p' | cut -d " " -f2
4、sed、awk、grep支持正则表达式
sed、grep支持一般正则,awk和egrep支持拓展正则。
但是其实sed和grep也是变相支持拓展正则的,只不过需要转义而已。
eg:
查找八位日期的文件夹
ls | egrep '^[0-9]{8}$'
ls | grep '^[0-9]\{8\}$'
ls | sed '/^[0-9]/{8/}$/'
5、删除除了最新的8位目录其他的目录
ls
| sed '/^[0-9]/{8/}$/' | sed '$d' | xargs rm -rf
6、打印出第三列大于1的用户
cat /etc/passwd | awk -F ':' '$3>1 {print $3 "\t" $1}'
7、将:替换成|
sed -i "s/:/\|/g" wh.txt
cat
wh.txt | sed "s/\|/:/g"
8、打印查询空行的行号
grep -n ^$ log
9、查询abc结尾的行
grep -n abc$ log
10、1j加到10的结果
for((i=1;i<=10;i++))
do
j=`expr $j + $i`
done
echo $j
11、找出当前目录文件大于50k,小于100k的文件
find . -size +5 -size -1099
相关文章推荐
- Hbase基础学习--shell常用命令
- Shell语言基础学习
- shell基础知识学习四
- Shell 脚本基础学习 (四)
- Shell 脚本基础学习 (一)
- shell学习简单基础知识
- Linux学习日记 —— 10.5.1 Shell基础-Bash变量-数值运算与运算符
- shell基础变量扩展学习
- Shell脚本学习之基础程序结构
- shell 基础学习
- Linux基础学习【shell学习】
- Linux脚本语言shell基础学习
- Linux学习(Shell基础)
- 菜鸟学习历程【2】vim的简单操作、GCC工具链、make和Makefile、GDB调试工具、Shell使用基础
- shell十三问,为linux学习打基础(一)
- 尚观学习-shell-基础 & 环境变量 & 自定义变量
- Shell脚本初步学习-鸟哥Linux私房菜基础学习篇
- Linux学习总结(十七)-shell 基础知识
- Shell 脚本基础学习 (四)
- Shell 脚本基础学习 (一)