Linux&&shell 总结 二

外部命令

外部命令,有时候也被称为文件系统命令,是存在于bash shell之外的程序。它们并不是shell程序的一部分。外部命令程序通常位于/bin、/usr/bin、/sbin或/usr/sbin中。当外部命令执行时,会创建出一个子进程。这种操作被称为衍生。

内建命令

内建命令和外部命令的区别在于前者不需要使用子进程来执行。它们已经和shell编译成了一体,作为shell工具的组成部分存在。不需要借助外部程序文件来运行。因为既不需要通过衍生出子进程来执行,也不需要打开程序文件,内建命令的执行速度要更快,效率也更高。

一个有用的内建命令是 history 命令。bash shell会跟踪你用过的命令。你可以唤回这些命令并重新使用。

当输入 !! 时,bash首先会显示出从shell的历史记录中唤回的命令。然后执行该命令。

全局环境变量

要查看全局变量,可以使用 env printenv 命令。在 echo 命令中,在变量名前加上 $ 可不仅仅是要显示变量当前的值。它能够让变量作为命令行参数。

局部环境变量

局部环境变量只能在定义它们的进程中可见。

set 命令会显示为某个特定进程设置的所有环境变量,包括局部变量、全局变量以及用户定义变量。

设置全局环境变量

在设定全局环境变量的进程所创建的子进程中,该变量都是可见的。创建全局环境变量的方法是先创建一个局部环境变量,然后再把它导出到全局环境中。这个过程通过 export 命令来完成,变量名前面不需要加 $

/etc/passwd文件将用户的登录名匹配到对应的UID值Linux为系统账户预留了500以下的UID值。有些服务甚至要用特定的UID才能正常工作。为普通用户创建账户时,大多数Linux系统会从500开始,将第一个可用UID分配给这个账户(并非所有的Linux发行版都是这样)。

文件权限符解释

drwxr-xr-x 2 root root   4096 7月  18 16:26 ./

 - 代表文件
 d 代表目录
 l 代表链接
 c 代表字符型设备
 b 代表块设备
 n 代表网络设备之后有3组三字符的编码。每一组定义了3种访问权限:
 r 代表对象是可读的
 w 代表对象是可写的

 x 代表对象是可执行的

若没有某种权限,在该权限位会出现单破折线。这3组权限分别对应对象的3个安全级别:
对象的属主
对象的属组
系统其他用户

umask 命令用来设置所创建文件和目录的默认权限。

chmod 命令用来改变文件和目录的安全性设置。

 u 代表用户
 g 代表组
 o 代表其他
 a 代表上述所有

 X :如果对象是目录或者它已有执行权限,赋予执行权限。
 s :运行时重新设置UID或GID。
 t :保留文件或目录。
 u :将权限设置为跟属主一样。
 g :将权限设置为跟属组一样。
 o :将权限设置为跟其他用户一样。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值