----------------------------经常用到的shell基本知识;
shell 常见命令解析:
$0代表脚本名称;
$# 参数个数;
$* 所有参数数组;
注:遍历参数时也可一通过util 和 shift的形式;
source xx.sh 或者 . xx.sh或者{cmd;cmd;}都是在当前shell环境下执行shell;
./xx.sh 或sh xx.sh 是在当前shell环境下启动一个新的子进程来执行shell;
exec cmd是用新的创建的进程取代当前进程;
硬链接和软链接的区别:
通过ls -li 可以看见硬链接文件有相同的inode值;(实际上磁盘驱动器是根据inode得到扇区,柱面的物理位置);可见硬链接是相同的inode指向相同的数据;修改的话当然同步,删除的时候如果硬链接数大于1,只是删除一个inode;数据不会删除;
软链接的inode值是不同的, 就像一个快捷方式;
注:对于不同的分区,虚拟文件子系统是通过设备号和inode来寻址磁盘物理数据的;可见不同分区有着不同的文件系统;所以不能建立硬链接的;
用户权限:suid和guid权限位是为了方便普通用户执行root的特权位;但是用户不能修改此命令脚本;
比如/etc/passwd文件;
suid的特权码是4,guid是2 ;所以一般可以在权限位前加4或者2,或者6,再加上当前命令的权限方式来加suid,guid,或者suid+guid : 比如: chmod 4755 cmd加上suid权限;
`cmd` 和$(cmd)都是在当前shell环境执行,并将输出结果打印在当前位置;
分享到:
相关推荐
B shell与 C shell的区别 B shell和C shell都是Linux操作系统中的shell类型,它们之间存在一些关键的区别。 首先,让我们从B shell开始。B shell,全称为Bourne shell,是UNIX最初使用的shell。它在每种UNIX上都...
本手册涵盖了 Shell 编程的基础知识,包括 Shell 概述、Shell 解析器、Shell 脚本入门、Shell 中的变量等。 Shell 概述 Shell 是一种命令行接口,允许用户与操作系统进行交互。学习 Shell 编程可以让开发者更好地...
资源名称:Linux Shell脚本学习基础视频资源目录:【】11a00d99b60c4e2eba3440b8aa3a6bdd【】linux_shell脚本编程_01认识shell,如何编写shell脚本和执行【】linux_shell脚本编程_02vivim简单的常用操作【】linux_...
提问: 我想要知道运行中脚本子shell的进程id。我该如何在shell脚本中得到PID。 当我在执行shell脚本时,它会启动一个叫子shell的进程。作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为...
Windows Shell 编程.pdf 看过一些对windows 外壳的扩展程序,在使用上一般都是直接利用windows的外壳API做一些工作,因为外壳操作需要一些比较专业的知识,因此,大部分编程人员特别是使用集成编程环境的程序人员对...