Linux~其实shell脚本也很简单
用了两个的centos之后,也想看看它的脚本,我们知道shell这个东西就像windows里的批处理,它可以将一些语句进行组合,然后统一去执行,感觉挺方便的。
shell文件的组成
shell语言环境
#! /bin/bash --它表示shell使用的语言为bash脚本
说明
使用#开头的一行表示为“注释”,它不会被执行,只是起到说明的作用
文件权限
r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权
w(Write,写入):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
x(eXecute,执行):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。
下面是文件权限对象的数字,添加时可以直接使用数字
-rwx------:等于数字表示700。
-rwxr―r--:等于数字表示744。
-rw-rw-r-x:等于数字表示665。
drwx―x―x:等于数字表示711。
drwx------:等于数字表示700。
chmod 755 hello --表示对所有用户添加一个读写执行的权限,它对就的文件是hello
shell主体
可以使用任何linux支持的语言来实现脚本,我们以bash为例,以下代码功能列表所有以abc开头的文件
ls -l abc*
执行shell程序
./hello --其中./表示当前目录下的文件
结果
aaarticlea/png;base64,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" alt="" />
以上代码表示当前目录和其子目录下,没有以abc开头的文件。
几个基础的命令
cat–concatenate and print files
cat用于在标准输出(监控器或屏幕)上查看文件内容
grep
grep ""在给定的文件中搜寻指定的字符串。grep -i ""在搜寻时会忽略字符串的大小写,而grep -r ""则会在当前工作目录的文件中递归搜寻指定的字符串。
find
这个命令会在给定位置搜寻与条件匹配的文件。你可以使用find -name的-name选项来进行区分大小写的搜寻,find -iname来进行不区分大小写的搜寻。
find <folder-to-search> -iname <file-name>
man
man会为给定的命令显示一个手册页面。
su
su用于切换不同的用户。即使没有使用密码,超级用户也能切换到其它用户。
df
df查看文件系统中磁盘的使用情况–硬盘已用和可用的存储空间以及其它存储设备。你可以使用df -h将结果以人类可读的方式显示。
ps
ps显示系统的运行进程。ps PID,显示具体进程的信息
top
top命令会默认按照CPU的占用情况,显示占用量较大的进程,可以使用top -u查看某个用户的CPU使用排名情况。
感谢各位的阅读!
Linux~其实shell脚本也很简单的更多相关文章
- 使用C#给Linux写Shell脚本(下篇)
在上篇的<使用C#给Linux写Shell脚本>结尾中,我们留下了一个关于C#如何调用BashShell的问题.在文章发布之后,我留意到有读者留言推荐使用“Pash”(一款类PowerSh ...
- Linux常用Shell脚本珍藏【转载】
我们在运维中,尤其是linux运维,都知道脚本的重要性,脚本会让我们的 运维事半功倍,所以学会写脚本是我们每个linux运维必须学会的一门功课,这里收藏linux运维常用的脚本.如何学好脚本,最关键的 ...
- 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器
本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...
- Linux/Unix shell 脚本中调用SQL,RMAN脚本
Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可 ...
- 从windows到linux的shell脚本编码和格式问题
从windows到linux的shell脚本编码和格式问题 从windows到Linux的shell脚本编码和格式问题 1.异常问题 :set ff=unix 启动脚本在启动时报错比如执行sh s ...
- Linux执行shell脚本方式及区别&命令后台运行
Linux执行shell脚本方式及区别&命令后台运行 http://blog.csdn.net/heqiyu34/article/details/19089951/
- Linux:从windows到linux的shell脚本编码和格式
从windows到linux的shell脚本编码和格式问题 异常问题 :set ff=unix 启动脚本在启动时报错比如执行sh start.sh,时会报Command not found等等的错误, ...
- 使用C#给Linux写Shell脚本
在这个逼格决定人格,鄙视链盛行的年头,尤其是咱们IT界,请问您今天鄙视与被鄙视的次数分别是多少?如果手中没有一点压箱的本事,那就只有看的份了.今天我们也要提升下自己的格调,学习些脑洞大开的东西,学完之 ...
- linux下shell脚本执行jar文件
最近在搞一个shell脚本启动jar文件个关闭jar文件的东东.搞得我都蛋疼了.今天晚上终于弄好了 话说,小弟的linux只是刚入门,经过各方查资料终于搞定了.话不多说,下面开始上小弟写的shell脚 ...
随机推荐
- ISP PIPLINE (十四) AE(自动曝光)
自动曝光可以可以通过调节 模拟增益,数字增益,曝光时间,光圈大小来调剂曝光. 曝光在ISP PIPLINE的位置. (先介绍一个额外的知识点: ) gamma compression(也就是de-ga ...
- 大数据平台Hive数据迁移至阿里云ODPS平台流程与问题记录
一.背景介绍 最近几天,接到公司的一个将当前大数据平台数据全部迁移到阿里云ODPS平台上的任务.而申请的这个ODPS平台是属于政务内网的,因考虑到安全问题当前的大数据平台与阿里云ODPS的网络是不通的 ...
- margin与padding的bug
1.在页面布局时,值对于块元素来说,相邻的两个兄弟块元素间的margin-top与上一个兄弟的margin-bottom重合时, 解决办法:对其中一个块元素中设置 display:inline- ...
- 微信小程序之canvas绘制海报分享到朋友圈
绘制canvas内容 首先,需要写一个canvas标签,给canvas-id命名为shareBox <canvas canvas-id="shareBox"></ ...
- Kubernetes1.7—DNS安装
虽然通过了Service解决了Pod重建后IP动态变化(服务发现).负载均衡问题,但使用Service还是要需要知道CLUSTER-IP,而通过NDS可以解决该问题:在Kubernetes集群中可通过 ...
- iOS 开发中单元格cell高度自适应
高度自适应分下面两种情况 1.用代码自定义的cell 用代码自定义的cell,cell高度自定义需要我们手动的去计算每个cell的字符串高度.然后返回对应的高度即可. 2.用XIB 或者 StoreB ...
- js数组和对象相等判断、拷贝详解(结合几个现象讲解引用数据类型的趣事)
序言 最近遇到几个js引用数据类型造成的bug,今天结合bug详细分析一下,避免以后再犯,也希望能帮大家提个醒,强化js基本功. 目录 1.浅拷贝.深拷贝,解决变量赋值相互影响问题 2.判断2个数组. ...
- react-native 组件整理
好早之前整理的部分组件,不全 怕丢
- nginx参数 uri和request_uri讨论
uri可以输出rewrite后的uri不带参数,要用args查看 request_uri 是请求的完整的uri带参数
- FBOSS: Building Switch Software at Scale
BOSS: 大规模环境下交换机软件构建 本文为SIGCOMM 2018 论文,由Facebook提供. 本文翻译了论文的关键内容. 摘要: 在网络设备(例如交换机和路由器)上运行的传统软件,通常是由供 ...