一、写一个 bash脚本以输出数字 0 到 100 中 7 的倍数(0 7 14 21...)的命令。
1.创建一个可编辑的bash脚本
[root@ssh-server ~]# mkdir test3.sh
[root@ssh-server ~]# cd test3.sh
[root@ssh-server test3.sh]# vi test.sh
2.进入并进行编辑
#!/bin/bash
for i in {0..100}
do
if [ $((i % 7)) -eq 0 ]
then
echo $i
fi
done
~
~
~
~
~
~
~
~
3.添加可执行权限并执行
[root@ssh-server test3.sh]# chmod +x test.sh
[root@ssh-server test3.sh]# ./test.sh
0
7
14
21
28
35
42
49
56
63
70
77
84
91
98
二、写一个 bash脚本以统计一个文本文件 nowcoder.txt中字母数小于8的单词。
示例:
假设 nowcoder.txt 内容如下:
how they are implemented and applied in computer
1.创建脚本进行编辑
[root@ssh-server test3.sh]# vi test11.sh
#!/bin/bash
word_count=$(cat nowcoder.txt | grep -oE '\b[a-zA-Z]{1,7}\b' | wc -l)
echo "The count of words with less than 8 letters is: $word_count"
2.创建文本编辑内容
[root@ssh-server test3.sh]# touch nowcoder.txt
[root@ssh-server test3.sh]# vi nowcoder.txt
how they are implemented and applied in computer
~
~
~
~
~
~
~
~
3.添加权限
[root@ssh-server test3.sh]# chmod +x test11.sh
[root@ssh-server test3.sh]# chmod +x nowcoder.txt
4.执行
[root@ssh-server test3.sh]# ./test11.sh nowcoder.txt
The count of words with less than 8 letters is: 6
三、写一个 bash脚本以实现一个需求,去掉输入中含有this的语句,把不含this的语句输出
示例:
假设输入如下:
that is your bag
is this your bag?
to the degree or extent indicated.
there was a court case resulting from this incident
welcome to nowcoder
你的脚本获取以上输入应当输出:
that is your bag
to the degree or extent indicated.
welcome to nowcoder
1.创建脚本并编辑
[root@ssh-server test3.sh]# vi test22.sh
#!/bin/bash
input="$@"
output=$(echo "$input" | grep -vE '.*this.*' | tr '\n''')
echo -e "$output"
2.添加权限
[root@ssh-server test3.sh]# chmod +x test22.sh
3.执行
[root@ssh-server test3.sh]# ./test22.sh "that is your bag" "is this your bag?" "to the degree or extent indicated." "there was a court case resulting from this incident" "welcome to nowcoder"
tr: missing operand after ‘\\n’
Two strings must be given when translating.
Try 'tr --help' for more information.