标签:
$ cat > users #建立文件,使用cat复制终端的输入
who | wc -l #程序的内容
^D #Ctrl + D表示end-of-line
$ chmod +x nusers #让文件拥有可执行权限
$ ./nusers #执行
6
$ cat nusers #文件内容
who | wc -l
#! /bin/sh #告诉系统用哪种Shell解释
#! /bin/sh -f #-f表示执行脚本的参数,后面不能有空格,空格会跟着选项一起传给程序
/bin/sh -f /bin/ls -la
#! /bin/awk -f #声明一个awk脚本,参数为-f
#! /bin/sh - #表示没有选项。这是基于安全的考虑,可避免欺诈攻击
ls -la
cd /usr/bin; ls -la
#! /bin/sh -
var1=1 #=>1
var2=aaa #=>aaa
var3="bbb" #=>bbb
var4="aaa bbb" #=>aaa bbb
var5 =1 #=>错误
var6= 2 #=>错误
#! /bin/sh -
echo "Hello World!" #=>Hello World!
printf "Hello World! i = [%d]\n" 3 #=>Hello World! i = [3]
#! /bin/sh -
set -x
echo "111"
set +x
echo "222"
#输出:
+ echo 111
111
+ set +x
222
# 将文件file中出现的"abc"替换为"xyz"
cat file | tr "abc" "xyz" > new_file
# 使用tr命令“统一”字母大小写
cat file | tr [a-z] [A-Z] > new_file
cat file | tr [A-Z] [a-z] > new_file
# 把文件中的数字0-9替换为a-j
cat file | tr [0-9] [a-j] > new_file
# 删除文件file中出现的"Snail"字符
cat file | tr -d "Snail" > new_file
【注意】这里,凡是在file文件中出现的‘S‘,‘n‘,‘a‘,‘i‘,‘l‘字符都会被删除!而不是紧紧删除出现的"Snail”字符串
# 删除文件file中出现的换行‘\n‘、制表‘\t‘字符,不可见字符都得用转义字符来表示
cat file | tr -d "\n\t" > new_file
# 删除“连续着的”重复字母,只保留第一个
cat file | tr -s [a-zA-Z] > new_file
# 删除空行
cat file | tr -s "\n" > new_file
# 删除Windows文件“造成”的‘^M‘字符
cat file | tr -d "\r" > new_file
cat file | tr -s "\r" "\n" > new_file
【注意】这里-s后面是两个参数"\r"和"\n",用后者替换前者
# 用空格符\040替换制表符\011
cat file | tr -s "\011" "\040" > new_file
# 把路径变量中的冒号":",替换成换行符"\n"
echo $PATH | tr -s ":" "\n"
标签:
原文地址:http://blog.csdn.net/davidwang414/article/details/51355621