shell编程基础
YYYY-MM-DD
这个作者很懒,什么都没留下…
展开
-
环境配置文件 ① /etc/profile、② ~/.bash_profile、③ ~/.bashrc、④ /etc/bashrc 作用与执行顺序,以及与login/nonlogin关系
有效期与环境配置文件1.有效期默认情况下,在shell下的用户变量、alias等,只在此次登录中有效。一旦关闭终端或注销后,则将会设置恢复初始值。用户可以将这些设置放入一个系统环境配置文件中,使其长期生效。每一个用户都有一个登录Shell,且默认为bash,当用户打开一个bash时,系统就去读取~/.bashrc配置文件。因此可以将相关的用户设定放入此文件中。2.环境配置文转载 2016-10-28 16:10:06 · 597 阅读 · 0 评论 -
交互式SHELL和非交互式SHELL、登录SHELL和非登录SHELL的区别
交互式shell和非交互式shell、登录shell和非登录shell的区别。首先,这是两个不同的维度来划分的,一个是是否交互式,另一个是是否登录。交互式shell和非交互式shell交互式模式就是shell等待你的输入,并且立即执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,sh转载 2016-10-28 15:34:07 · 1378 阅读 · 1 评论 -
linux文件的文件类型(d,-,s,b,c,....)和文件权限(r,w,x, s,t,S,T)与文件特殊权限(s,t,S,T)
一、UNIX下关于文件权限的表示方法和解析UNIX下关于文件权限的表示方法和解析 SUID 是 Set User ID, SGID 是 Set Group ID的意思。 UNIX下可以用ls -l 命令来看到文件的权限。用ls命令所得到的表示法的格式是类似这样的:-rwxr-xr-x 。下面解析一下格式所表示的意思。这种表示方法一共有十位: 9 8 7转载 2016-11-02 19:32:28 · 21762 阅读 · 1 评论 -
$* $@
再谈 $* 和 $@ 在 Bash 中的表现除非特别说明,本文中出现的 Shell 均指 Bash 4.3。首先说一个基础知识:Shell 中的变量在展开成值(Parameter Expansion)之后,这个值在某些上下文(Context)中,还会进行分词操作(Word Splitting),但在另外一些上下文中,不会进行分词操作。本文中把会进行分词操作的上下文叫做列表上下文(L转载 2017-06-21 11:22:58 · 288 阅读 · 0 评论 -
linux shell中$0,$?,$!等的特殊用法
$$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行的命令的结束代码(返回值) $- 使用Set命令设定的Flag一览 $* 所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。 $@ 所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n"转载 2018-02-26 16:04:02 · 959 阅读 · 0 评论 -
linux source、sh、bash、./ 执行shell脚本 区别
在linux里,source、sh、bash、./都可以执行shell script文件,那它们有什么不同吗?-----------1、sourcesource a.sh在当前shell内去读取、执行a.sh,而a.sh不需要有"执行权限"source命令可以简写为".". a.sh注意:中间是有空格的。 2、sh/bashsh a.shbash a.sh都是打开一个subshell去读取、执行...转载 2018-02-27 11:58:17 · 1891 阅读 · 0 评论