Linux 学习(三)
Linux进程
1.进程 
进程:可执行应用程序执行后产生的对应的进程,重量级;进程是由一个线程或多个线程构成;
线程:是计算机中的最小单位,轻量级(依赖和物理性是独立存在的)、损耗较低
假设进程1是由1、2线程组成;进程2是由2、3线程组成; 
当进程1启动后,进程2则需等待进程1执行完毕,资源释放后,方可执行; 
而当进程1如果一直都不释放资源,则容易造成死锁;
Zombie僵尸进程: 
当存在很多僵尸进程说明什么问题:说明模块和模块之间的结构有问题(代码中只写了调用,没有写回收);
Ps –ef—-查询静态进程监控 
Kill 进程号—-结束进程 
Kill -9 进程号—-强制结束进程 
Ps –ef|pgrep “httpd”—-查询httpd的端口号
Top—查询(动态)进程 
{Load average:系统当前负载资源; 
Tasks:进程数、zombie僵尸进程; 
Id :空闲的 
Mem:内存;buffer:缓存 
Swap:交换分区 
在top状态下,输入u:用户;显示指定的用户进程; 
输入q:表示退出top状态;
查询进程端口:netstat –ano  
Bash csh ksh tcsh 
更改shell:chsh –s 目标
| 符号 | 解释 | 
|---|---|
| ~ | root目录或宿主目录 | 
| ! | 表示非 | 
| @ | 普通链接或者邮箱标识符 | 
| # | 注释 | 
| $ | 变量 | 
| % | 取模 | 
| ^ | 表示不在什么范围之中 | 
| & | 表示与 | 
| * | 表示统配 | 
| () | 表示函数 | 
| -+*/ | 表示运算符 | 
| ** | 表示幂运算 | 
| \ | 拖逸符 | 
| / | 表示路径 | 
| {} | 表示枚举 | 
| [表达式] | 表示的是条件逻辑判定 | 
| : | 表示命令引用结束之前 | 
| ; | 表示语句结束 | 
| ;; | 表示case语句的结束 | 
| ‘’ | 表示字符串 | 
| “” | 表示 | 
| “ | 表示命令的引用 | 
| > | 表示覆盖 | 
| > | 表示追加 | 
| -> | 表示链接指向 | 
| ? | 表示单个字符统配 | 
| = | 表示赋值 | 
| ./ | 表示执行 | 
linux中的比较预算符等同于批处理中的大于、小于、等于:gtr、lss、equ、neq、geq、leq 
   #!表示的是bash脚本的开头 
   |     管道 
   ||       或
shell脚本
文本文档,针对linux中,单个命令无法进行完成,而是需要多个命令时,就可以将所有命令写到shell脚本中,直接运行shell脚本即可。主要采用的是C语言
注意:Shell脚本—-必须具有可执行的权限,才能被执行
Shell脚本中相关解释
Echo :输出命令(或者使用printf进行输出) 
$?:表示验证脚本或者命令是否执行完成,如果结果是0表示执行成功, 
如果是其他数字的话,则表示执行不成功。
#! /bin/bash  ---释伴行(声明为:是使用bash脚本的进行执行的)
{}枚举:如果{}中只有一个元素的话,则不会当成是元素,而是被看做一个整体,只有存在多个元素的情况,才会被认定为枚举
举例 :touch {a,b}-{c,d}   ----创建四个文件:a-c a-d  b-c  b-d
[表达式]:实现运算a=$[5+6];(如果a=5+6,会直接当成是字符串输出)
        或者:set a=expr 5+6
        或者:expr 8 + 9(注意空格)
        执行文件方式:./文件    或bash 文件
流程控制语句
If  [ 表达式 ] ;then 
语句块 
Elif [ 表达式 ] ;then 
语句块 
Else 
语句块 
Fi 
Or 
If  [ 表达式 ]  
then 
语句块 
Else 
语句块 
Fi
Case 变量 in 
标识符) 
    语句块 
;; 
* ) 
    语句块  
;; 
Esac
#! /bin/bash
Echo “please input a number”
Read x
Echo “please input another number”
Read y
If [ $x –gt $y ] ; then
Echo “x>y”
Elif  [ $x –eq $y ] ; then
Echo “x==y”
Else
Echo “x<y”
fi
实现从控制台输入数据:
#! /bin/bash
Echo “please input str”
Read x
Case $x in
    Root)
    Echo “I am root”
;;
    *)
    Echo ”nothing”
;;
Esac
循环
For i in `seq 1  10` ----表示按顺序
Do
Echo $i
Done
或者
For((i=0;i<=10;i++))
{
Echo $i
}
计算奇数偶数和Linux 学习(三)的更多相关文章
- Linux 学习 (三) 文件搜索命令
		Linux达人养成计划 I 学习笔记 locate 文件名 搜索速度比较快 只能根据文件名搜索 搜索的是保存在 /var/lib/mlocate 的数据库(每天更新一次) 新建文件需要执行 updat ... 
- 【Linux学习三】VI/VIM全屏文本编辑器
		环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 一.打开关闭文件打开文件:vim /path/to/somefilev ... 
- Linux学习三:Ubuntu下使用minicom和开发板通信
		备注:如果你是用的是Windows则使用超级终端即可:开始-程序-附件-通讯-超级终端 现在我们在Ubuntu下安装配置minicom: 1.进入ubuntu桌面ctrl+alt+t打开终端 输入:s ... 
- 【Linux学习三】Linux系统目录架构
		主要包括: ●bin:保存的是可执行文件,二进制,就是命令 ●boot:引导目录,操作系统的启动加载,包含版本内核文件.greb引导程序- ●dev:硬件设备文件,如硬盘.网卡.声卡.终端.显卡,每一 ... 
- Linux 学习 三, linux 文件结构
		linux 的文件结构 linux 下的bin 目录,包含了常用的命令应用程序 /bin: bin为binary的简写主要放置一些系统的必备执行档例如:cat.cp.dmesg.gzip.kill.l ... 
- Linux学习(三)-Vi和Vim的区别
		它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面.vim的这些优势主要体现在以下几个方面:1.多级撤消我们知道在vi里,按 u只能撤消上次命 ... 
- linux学习(三)-----linux用户管理、实用指令
		用户管理 基本介绍 说明: 1.Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向 系统管理员申请一个账号,然后以这个账号的身份进入系统. 2.Linux 的用户 ... 
- linux 学习(三) php相关
		五 php相关 配置文件位置 /etc/apache2/apache2.conf 1禁止列举目录 sudo vi /etc/apache2/sites-enabled/000-default 删除Op ... 
- linux学习(三) -- lnmp环境切换php版本,并安装相应redis扩展
		原创文章,转载请注明出处 我想配置的环境是ubuntu+nginx+mysql+php+redis,其中php装两个版本,php7和php56 ubuntu+nginx+mysql+php的环境配 ... 
- linux学习 三  redhat
		1: 查看redhat版本号. 2: 防火墙中加入8080 查看防火墙状态,root用户登录,执行命令systemctl status firewalld 开启防火墙:systemctl star ... 
随机推荐
- 子元素设置margin-top,父元素也受影响
			这个问题困惑了非常久.尽管没有大碍早就摸出来怎么搞定它.但始终不明确原因出在哪里,假设仅仅是IE有问题我也不会太在意.可问题是全部上等浏览器都表现如此,这样叫我怎能安心?今天总算下狠心查出来怎么回事, ... 
- BIOS Setup
			一般而言,普通的计算机系统应用不必关注BIOS的设置.但是如果涉及到主板集成声卡,网卡,或需要进行远程网络唤醒等操作时,必须在BIOS中设置相应参数才能使电脑正常工作.BIOS能对硬件设备进行初始 ... 
- Windows网络编程:winsock文件传输范例
			基于TCP流协议的winsock网络文件传输Demo: 实现:C语言 功能:文件传输(可以传任何格式的文件) /******************************************** ... 
- cocos2d-x 3.6版连连看版本号控制
			为了以后的开发和管理.源代码开发必须要使用版本号控制.我们当然选择git来做版本号控制了. 假设你在终端输入git,提示不是一个命令的话.那就说明你的机器没有安装git工具.那就安装一个,百度之有非常 ... 
- C#在Linux下获取文件夹信息(所在磁盘总大小,使用空间,已用空间,使用率)
			1.第一种使用shell命令实现: private DiskInfo LinuxGetFolderDiskInfo(string path) { DiskInfo disk = new DiskInf ... 
- 图像处理之基础---图像缩放中的双线性插值c实现
			在进入频域变换之前, 我们还是轻松一下,再搞点平面上的变化来看看.这把选了一个双线性插值(Bilinear interpolation)来实现是源于看到了csdn上别人的问题, 权且实现一个函数,方便 ... 
- Msql入门实战之下
			前面一章主要解说了mysql的select的使用方法.将select的大部分使用方法进行分别解说.本章主要解说Msql约束表的建立,以及存储过程的实现,附带其它介绍.临时就算入门了,Mysql索引之后 ... 
- YTU 2639: 改错题:类中私有成员的访问
			2639: 改错题:类中私有成员的访问 时间限制: 1 Sec 内存限制: 128 MB 提交: 431 解决: 297 题目描述 /* 改错题: 设计一个日期类和时间类,并编写全局函数displ ... 
- BZOJ_1229_[USACO2008 Nov]toy 玩具_三分+贪心
			BZOJ_1229_[USACO2008 Nov]toy 玩具_三分+贪心 Description 玩具 [Chen Hu, 2006] Bessie的生日快到了, 她希望用D (1 <= D ... 
- RDA 工模
			1.工模GUI如下图: 注意两个API接口,_APP_Update_Layer()/UpdateNodeFunctionContent() 这两个接口一个是刷新ListView,另一个刷新ListVi ... 
