shell学习笔记

来源:互联网 发布:java实现短信发送代码 编辑:程序博客网 时间:2024/06/07 05:02

2015年9月16日09:47:23 开始学习shell

先做了一个简单的实验

[root@controller ~]# cat >> ts         

#!/bin/cat                                         

hello world                                      

[root@controller ~]# ./ts              发现权限不够?这是什么问题。。。

-bash: ./ts: 权限不够                       那就修改权限吧

[root@controller ~]#chmod 777 ts   

[root@controller ~]# ll ts                  

-rwxrwxrwx. 1 root root 25 9月  15 12:09 ts

[root@controller ~]#./ts                   

#!/bin/cat                                         

hello world                                      果然是修改完权限后得到想要的结果

 

who属性:系统相关-系统安全

who语法:who [参数] [记录文件]

1. -a : 显示所有信息 

2. -b : 显示系统最后一次重启的时间 

3. -d : 显示已失效的保存 

4. -H : 显示标题栏    

5. -i : 显示系统闲置时间 

6. -l : 只显示行数 

7. -m : 只显示自己登陆的相关信息 

8. -q : 只显示登录系统的用户名称与总人数 

9. -r : 显示当前的执行等级 

10.       -t : 显示最后一次修改时钟的时间  

11.       -h : 不要显示标题列 

12.       -u : 显示用户已闲置的时间 

1. wc作用: 字数计算 

2. wc语法:wc [选项] [文件] 

3. -c : 统计字节数。   

4. -l : 统计行数。   

5. -w : 统计字数。   

记住上述的参数再来一个小实验

[root@controller ~]# who -a | wc –l     显示所有信息统计行数

6                                       得到答案6

 

echo 与printf I/0重定向等参数

语   法:echo[-ne][字符串]或 echo[--help][--version]

补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。

参   数:-n 不要在最后自动换行

           -e若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:

\a 发出警告声;

\b 删除前一个字符;

\c 最后不加上换行符号;

\f 换行但光标仍旧停留在原来的位置;

\n 换行且光标移至行首;

\r 光标移至行首,但不换行;

\t 插入tab;

\v 与\f相同;

\\ 插入\字符;

\nnn 插入nnn(八进制)所代表的ASCII字符;

–help 显示帮助

–version 显示版本信息

小实验 201591610:17:45使用C语言中的printf语句%s代表可输出的字符串

[root@controller ~]# cat >> printf

printf "hello 123 '%s,%s'" Love YjCepk

[root@controller ~]# chmod 777 printf

[root@controller ~]# ./printf

hello 123 'Love,YjCepk'

 

小实验201591610:18:54使用变量i%s的替换

 

[root@controller ~]# cat >> printf

i='%s%s!'

printf "$i" ni hao zhongguo

printf "$i" ni hao YjCepk

printf "$i" love you

[root@controller ~]# ./printf

ni,hao!zhongguo,!ni,hao!YjCepk,!love,you!

 

小实验201591610:24:39使用tr-d参数屏蔽ll显示出ts文件中内容

 

[root@controller ~]# cat ts

#!/bin/cat

hello world

[root@controller ~]# tr -d "ll" <ts

#!/bin/cat

heo word

这么看感觉并没有啥用是吧,把他输入到文件似乎就有用了、

[root@controller ~]# tr -d "hello" <ts >123

[root@controller ~]# cat 123

#!/bin/cat

 wrd

 

0 0
原创粉丝点击