shell编程(1)---shell 基本指令

20 篇文章 0 订阅


shell 指令

 

head    test/1.txt      查看最前面 10 行

head   -n   15   test/1.txt   查看  前15 行

 

tail   test/1.txt   查看 最后 10行记录

tail   -n  15  test/1.txt  查看最后15行记录

tail  -f   test/1.txt     查看实时记录

tailf   test/1.txt       查看实时记录

 

grep

 

cut : cut 命令 只显示某一列的内容  

 

 

wc 用来统计行 字符

 

sort  用来排序

 

 

man   是linux 的学习手册   

 q     :     退出man 指令 


 

设置别名  alias   

取消别名  unalias 

 

 

 

history :  查看所有指令     shell 总共有1004条指令

 

ls    |xargs   : 

 

 

2>    error.log   :输出

>    error.log    : 输出 

>>     error.log    : 追加  

 

 

 

sleep 100       秒

 

ctrl+z  暂停 后台命令  并没有将进程杀死,fg 可以恢复它。

jobs:查看 后台命令:   sleep 命令 

fg  1  :恢复 1 sleep 命令

ctrl+z :  终止后台命令

 

[root@aliyun247 test]# hostname -i

10.173.54.46

[root@aliyun247 test]# sleep 100

^Z

[1]+  Stopped                 sleep 100

[root@aliyun247 test]# jobs

[1]+  Stopped                 sleep 100

[root@aliyun247 test]# sleep 200

^Z

[2]+  Stopped                 sleep 200

[root@aliyun247 test]# jobs

[1]-  Stopped                 sleep 100

[2]+  Stopped                 sleep 200

[root@aliyun247 test]# fg1

-bash: fg1: command not found

[root@aliyun247 test]# fg 1

sleep 100

gf 2

^C

[root@aliyun247 test]# fg 2

sleep 200

^C

[root@aliyun247 test]# jobs

 

 

 

shell 变量

 

变量命名规则 字母,数字,下划线,数字不能开头 

 

声明变量  a=1

用export 声明变量 全局有效: export  a=1

查看变量  变量名称前加一个美元符号: echo   $a  

 

 

env:  打印出系统内置变量 

set :列出系统变量

 

 

 

 

unset 取消一个变量: unset   变量名(注意变量名称前 不需要 美元符号)

反引号,单引号 ,双引号 的不同,单引号最严谨。

 

bash: 进入子shell文件     exit:退出子shell 文件

 

 

 

环境变量:

 

su   -:  用户重新登录

特殊符号: *   #   \    |    ;    &     >      >>     2>     ^c  

指令:cut  ,sort ,wc ,tr ,split

 

cut -d ':' -f 3  /etc/passwd

cut -d ':' -f  1-3  /etc/passwd

cut -d ':' -f 1,3  /etc/passwd

[root@aliyun247 test]# cut -c 1-10 /etc/passwd

root:x:0:0

bin:x:1:1:

daemon:x:2

adm:x:3:4:

lp:x:4:7:l

sync:x:5:0

 

 

 

cut -c 1-10 /etc/passwd

cut -c 1,10 /etc/passwd

 

[root@aliyun247 test]# cut -c 1-10 /etc/passwd

root:x:0:0

bin:x:1:1:

daemon:x:2

adm:x:3:4:

lp:x:4:7:l

sync:x:5:0

 

 

 

 

排序用法:

 -n: 加上是按数字排序 ,不加是按ascii  码排序。

 -r:

 

 

sort -t ":"  -k3   /etc/passwd 

sort -t ":"  -k3  -n   /etc/passwd   

 

 

sort -t ":"  -k3  -n   /etc/passwd    cut -d ':' -f 3

 

 

cut -d ':' -f 3  /etc/passwd |sort -nr|uniq  

 cut -d ':' -f 3  /etc/passwd |sort -nr|uniq   -c; 

 

 

wc : 统计     行数    字数   字节

wc 1.txt 输出:  29    39      1263       1.txt 

 

 


wc  -c   1.txt   :统计文件   字节

wc  -l   1.txt   :统计文件    行

wc  -w   1.txt  :统计文件  字符   

 

 

 

 

tr    : 替换     |tr 'a-z'  'A-Z'    :用大写替换小写  

 

du -sh  * 

#查看所有的文件的大小 

 

du   -sh      /etc/passwd  

#查看一个文件的大小 

  输出内容如下: 4k   /etc/passwd

 

 

du   -sb   /etc/passwd   

#产看文件的大小     输出内容如下: 1216  /etc/passwd 

 

 

 

 for i in 'seq 1 10000';do cat /etc/passwd >>1.txt ;done  :循环用法 

 

split  切割  

#切割一个文件 ,以文件大小 切分 

 

split   -l    100   1.txt     

split   -b  1m   1.txt  

split   -w    100   1.txt  

 

split   -l    2    1.txt   :按行   将1.txt 文档拆分 

 

mkdir   test    创建一个目录 

mv 移动文件   :mv  1.txt   test/

 

 

特殊符 : ll , &&  连接连个命令

cd   /test  && ls :  且:  先进入cd 命令 然后执行ls命令。如果第一个命令没有成功则不执行第二个命令 

cd  /test  ||   ls  : 或 :  执行cd 命令 或  ls 命令 。 第一个命令不成功才有机会执行第二个命令

 

 

shell 操作    交互式和非交互式   

 

交互式: 操作员一条一条指令的输入,并按enter提交。

非交互式 是预先编写 shell脚本。千万条命令预先编写完成,然后直接执行脚本, 脚本文件需要一一个解释器逐行解释。

 

脚本创建过程? 

  1  理清任务 分解任务   2  考虑用脚本实现每个步骤    3 完善脚本 


 

shell  编程

 

 

首先建一个shell 脚本的程序,vim  1.sh ,ok 1.sh 是文件编写代码的,vim 编辑文本文件,

sh  1.sh  : 执行文件。

bash   1.sh  :  执行文件

chmod    a+x   1.sh    :授权rootquanx

./1.sh          :被授予root权限的文件 可以直接这样运行。

/root/1.sh  :     全路径的方式执行  文件 。

 

 

 

 

接收从键盘输入:

--stdin

 

忽略无关输出:

/dev/null

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值