shell 基础 在终端输入:sh进入脚本界面 helloworld 编辑内容 #!/bin/bash echo "hello world!" 保存退出: w ~/helloworld.sh 运行: chmod +x ~/helloworld.sh cd ~ ./helloworld.sh 执行结果: hello world! 分析: 第一行中#!是一个约定的标记,告诉系统脚本需要使用什么解释器来执行,即使用哪一种shell 这种在第一行指定了解释器信息的方式,需要让脚本作为可执行程序执行 还有第二种运行方式,即作为解释器参数,这时,第一行的解释器信息,失效 eg:python test.py shell 变量 显式 …
shell进阶 破壳漏洞 env x='() { :;}; echo shellshocked' bash –c "echo test"检查,如果输出了两行,那么需要升级bash的版本 解释器的类型 系统中的shells使用cat /etc/shells查看: /bin/sh /bin/dash /bin/bash /bin/rbash /usr/bin/tmux /usr/bin/screen /bin/zsh /usr/bin/zsh 设置解释器的类型 #!/bin/bash在文件的开头使用,内核会根据"#!“后的解释器来确定该用那个程序解释这个脚本中的内容 脚本的编辑 vim帮助我们编 …
Linux基础 文件基本属性 ll/ls -l 显示一个文件的属性以及文件所属的用户组 eg: [root@www /]# ls -l total 64 dr-xr-xr-x 2 root root 4096 Dec 14 2012 bin dr-xr-xr-x 4 root root 4096 Apr 19 2012 boot …… bin 以d开头,表示这是一个目录 当为[-]是文件 当为[l]表示为link file 当为[b]表示为可以进行存取的接口设备 当为[c]表示为串行端口设备 接下来以3个为一组,且均为[rwx]的组合,位置次序不变 [r]表示可读,[w]可写,[x]可执行,如果没有这个权限,就会用[-]代替. 第0 …
Unix/Linux 编程實踐教程 ## 什麼是系統編程 系统资源 处理器 程序由指令构成,处理器是执行指令的硬件设备,一个系统中可能有多个处理器,内核可以安排一个程序何时开始开始执行,暂时停止,恢复执行,终止执行 输入输出 程序中所有的输入输出都必须流经内核,集中处理,保证了系统的正确性,安全性,有效性 进程管理 每个程序执行都必须有自己的资源,内核可以新建进程,中止进程,进程调度 内存 程序必须被装载到内存中才能运行,内核可以对进程进行管理,在程序需要的时候给程序分配内存,当程序不需要时,回收内存,还可以保证内存不被其他进程非法访问. 设备 各种设备的操作方式不相同,通过内核,可以屏蔽這種差异, …