1.修改密码
echo "dasong" | passwd --stdin dasong
2.连接sqlplus
sqlplus -L -S / as sysdba <
select sysdate from dual;
exit;
EOF
注:第二个EOF顶格写
使用spool命令导出数据,则可以使用:
sqlplus -L -S / as sysdba < set newp none;
set feedback off;
set trimspool on;
set heading off;
spool /tmp/user_name.txt
select table_name from user_tables;
spool off;
exit;
EOF
3.读取文件
while read file_line; do
echo ${file_line}
done < dasong.txt
4.dos2unxi
将ds.sh转为unix格式
dos2unix ds.sh
将当前目录下的所有以sh结尾的文件转为unix格式
find . -name "*sh" -exec dos2unix {} \;
dos2unxi改dos格式的换行符为unix格式换行符
相对的命令为unix2dos
5.判断一个字符是否包含另一个字符
echo "marcus mao" | grep "marcus"
6.输出第n个字段
echo "marcus,mao,dasong" | awk -F',' '{print $1}'
7.解压*.tar.gz文件到指定目录
tar -xzvf marcus.tar.gz -C /home/marcus
8.以某用户执行一个命令
su - oracle -c "tnsping ds01"
9.替换字符
echo "dasong mao" | sed 's/dasong/marcus/g'
10.调用函数
function show_msg(){
echo $1
}
show_msg "Hi everybody, I'm Marcus Mao."
11.调试
set -x 会将所执行的命令及结果一并显示出来,如果要调试整个文件,则在shell脚本的#! /bin/bash的下一行写set -x;
如果只调试单个函数,则可以在函数体的第一行写上些语句。
12.获取文件的绝对路径
abso_dir=$(cd "$(dirname $0)"; pwd)
13.显示菜单
function show_lang(){
cat <
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7417681/viewspace-709896/
,如需转载,请注明出处,否则将追究法律责任。