shell 命令解释器是用来解释用户对系统的操作 使用cat /etc/shells可以查看 系统安装的shell

Linux 启动过程:BIOS -> MBR -> BootLoader(grub) -> kernel -> systemd -> 系统初始化 -> shell

BIOS 基本输入输出系统 选择U盘启动还是硬盘启动;MBR 硬盘里可引导的部分;BootLoader(grub) 启动内核工具 选择启动的内核;

kernel 启动内核;systemd 1号进程 其余所有进程派生于它;然后才是系统初始化 启动shell

执行脚本的四种方式

1 bash ./filename.sh 2 ./filename.sh

3souce ./filename.sh  4 . ./filename.sh

1和2 执行脚本时 会创建一个新的进程来执行 3和4执行脚本时会用当前进程来执行(环境变量是当前系统的环境变量) (不产生新进程执行的命令叫做内建命令

1 3 4 执行脚本时脚本可以不拥有执行权限 2 执行脚本时必须有可执行权限

管道'|' 两个进程之间的通信 第一个进程的输出当作第二个进程的输入  a|b|c a的输出当作b的输入 b的输出当作c的输入 (管道应该规避内建命令

重定向 更改标准输入和标准输出为文件 利用文件代替键盘的输入 保存至文件代替终端的输出

> 输出 覆盖输出  >> 追加输出

2>> 错误输出重定向 2 为标准错误流重定向

&>> 正确或错误都重定向输出

变量 shell脚本中可以有变量 变量名由字母 数字 下划线组成 数字不能在变量名开始处

shell 变量为弱类型 不区分类型 区分大小写

使用方式 1name=value 等号左右不能有空格   2 read name从用户处读入变量 交互式输入 3 name=ls 变量的值还可以是命令

4 name=$(ls /etc/)变量的值还可以是命令的字符串 $() 可以用``反引号代替 5let a=2let关键字也可赋值 此时赋值数字时可以使用0开头八进制 和0x开头十六进制

6 变量的值有特殊字符时应该用" 或者'包起来 这时候不应该使用let 使用'单引号包裹的内容不会解析变量 会被当作字符串输出

变量引用 ${}大括号{}可以省略 当使用字符串拼接时 也就是要把变量的值加上其他字符串 这时候{}不能省略

变量作用范围  默认作用于当前执行的shell本身 若想让作用于子shell 时 需要用export 导出一个变量  变量不再使用时 可以用unset删除变量

环境变量 环境变量是当前用户统一配置的 当前用户下每个shell都可以得到的变量  使用env set可以查看当前环境变量

常用环境变量  $PATH为命令搜索路径   $USER 用户名   $UID 用户id    $PSI配置终端提示显示

预定义变量   $?保存上一条命令运行结果0为正确 1为错误   $$当前进程PID $0当前进程名

位置变量   $0 $1 ... $9执行脚本时的参数 不存在为空(${2-_}如果$2为空代表_  不空代表$2

环境变量配置文件  /etc/profile  /etc/bashrc  ~/.bashrc  ~/.bash_bashrc  /etc/profile.d/

/etc/目录下对所有用户生效 ~/目录下对当前用户生效

执行 su - root 时 配置文件执行顺序  /etc/profile  ~/.bash_bashrc  ~/.bashrc  /etc/bashrc 有相同变量名时后面会覆盖前面的

执行su root时 执行~/.bashrc 和 /etc/bashrc

数组的使用

IPTS=(1 2 3) 定义数组   值之间用空格分开IPTS=(1 2 3)

echo ${IPTS[@]} 显示所有元素

echo ${#IPTS[@]}显示元素个数

echo ${IPTS[0]} 显示第0个元素

linux下688权限,Linux shell脚本笔记相关推荐

  1. LINUX下的流量监控shell脚本

    这篇文章主要介绍了LINUX下的流量监控shell脚本,可以适用任何Linux版本,需要的朋友可以参考下 一.脚本源码 # vi /etc/rc.d/traffic_monitor.sh ------ ...

  2. linux下实现内存监视,shell脚本来监视Linux上的内存使用情况

    shell脚本来监视Linux上的内存使用情况 监视所有内容,例如CPU利用率,内存利用率,交换利用率,磁盘空间利用率等等. 如果您只有很少的系统并且要监视它们,那么编写一个小的Shell脚本可以使您 ...

  3. linux下定时任务以及简单shell脚本的编写------码神帅

    如何编写一个简单的shell(.sh) 在开始前要明白shell脚本的后缀为.sh 在此我们用crt连接之前安装过vim的ubuntu做测试,来创建一个可以输出"Hello word!&qu ...

  4. linux下测试权限,Linux下进程权限分析

    在linux下,关于文件权限,大部分人接触比较多,也比较熟悉了解.但是对进程权限一般知之甚少.本文总结一下linux系统下进程权限问题和现象. 需要强调的是,本文是linux系统下讨论,因为linux ...

  5. Linux启动shell的快捷方式,Linux下为可执行shell脚本文件(.sh),制作桌面启动快捷方式...

    自装软件默认安装目录为 /usr/local,而生成的应用程序可执行图标(文件)放置在/usr/local/share/applications 目录下,以XXX.desktop 文件形式存在.以xx ...

  6. linux下自定义dubbo的shell脚本

    转载于:https://www.cnblogs.com/Eddyer/p/6533315.html

  7. linux下redis权限,Linux(Centos)下Redis开机自启设置

    1.设置redis.conf中daemonize为yes,确保守护进程开启. 2.编写开机自启动脚本 vi /etc/init.d/redis 脚本内容如下: # chkconfig: 2345 10 ...

  8. linux脚本输出到文件,在linux下,如何将shell里输出的信息写入到文件里呢?

    在linux下,如何将shell里输出的信息写入到文件里呢? 在linux下,如何将shell里输出的信息写入到文件里呢? 通过下面的两个管道符可以实现些功能. >               ...

  9. Linux 之旅 10:Shell 脚本

    Linux 之旅 10:Shell 脚本 (图片来自shell/bash脚本编程) Linux 上的 Shell 脚本可以看做是类似于Windows上的批处理程序(.bat)一样的东西,其本质就是将一 ...

  10. linux下简单的备份的脚本 2 【转】

    转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=26807463&id=4577034 之前写过 linux下简单 ...

最新文章

  1. 《Android应用开发入门经典(第3版)》——导读
  2. 卡夫卡(kafka)
  3. IDC数据中心机房该如何节能
  4. Qt三种方式实现FTP上传功能
  5. STL源码剖析 第二次温习 细节审核
  6. html中form标签的作用style,HTML5中meta常用标签属性说明
  7. CUDA——调试“ImportError: libcudart.so.9.2: cannot open shared object file: No such file or directory”
  8. 以色列政府网站遭史上规模最大的DDoS 攻击
  9. 谷歌将反欺诈系统绕过纳入漏洞奖励计划
  10. python程序设计总结报告_把PPT 总结报告上传
  11. Mac下Aria2加速各种网盘下载,你值得拥有!
  12. 巴厘岛7天6晚实用型游记
  13. 人工智能小白日记 语音情感分析探索之2 CNN相关及实验
  14. Blinn-Phong反射模型
  15. 政府怎么应用视频直播系统?
  16. Mac电脑百度网盘登录卡死现象解决方案
  17. 一个软件工人的转正总结
  18. centos7使用yum安装MySQL8.0
  19. JavaScript 定时器
  20. Volley简介(三)

热门文章

  1. DDR2与DDR的区别
  2. 2007.05.07 不再如此堕落
  3. 手动配置 hibernate 项目
  4. 春节咋过?韩上班族平均休4天 计划花费2756元人民币
  5. oracle11g导入导出
  6. 廖雪峰 - nodejs教程
  7. CxImage图像库的使用
  8. liunx 系统下面安装jdk
  9. 防盗链Nginx设置图片防盗链,设置无效的请仔细看红字
  10. autobuddy in mfc导致的错误