Linux
文章平均质量分 66
relianceslee
这个作者很懒,什么都没留下…
展开
-
Linux 学习小记:Linux下C开发工具介绍
Linux下C开发工具介绍 Linux的发行版中包含了很多软件开发工具. 它们中的很多是用于 C 和 C++应用程序开发 的. 本文介绍了在 Linux 下能用于 C 应用程序开发和调试的工具. 本文的主旨是介绍如 何在 Linux 下使用 C 编译器和其他 C 编程工具, 而非 C 语言编程的教程. GNU C 编译器 GNU C 编译器(GCC)是一个全功能的 ANSI C 兼容编译器. 如果原创 2005-08-22 14:55:00 · 1440 阅读 · 0 评论 -
Linux之线程同步篇
进行多线程编程,最头疼的就是那些共享的数据。因为你无法知道哪个线程会在哪个时候对它进行操作,你也无法得知那个线程会先运行,哪个线程会后运行。下面介绍一些技术,通过他们,你会合理安排你的线程之间对资源的竞争。l 互斥体Mutexl 信号灯Semophorel 条件变量Conditions先说一下互斥量。什么时候会用上互斥量了?比如你原创 2006-07-21 14:21:00 · 6082 阅读 · 0 评论 -
Linux之进程篇
何谓进程?进程就是一个正在运行着的程序实例。在Linux中,每一个进程都有一个进程号(Process ID)来标示身份。在shell中你可以通过ps命令来查看。 [liyong@localhost temp]$ ps PID TTY TIME CMD原创 2006-07-21 14:15:00 · 2348 阅读 · 0 评论 -
简单进程和信号处理
进程的定义:一个其中运行有一个或多个线程的地址空间和线程要求使用的系统资源。简单而言,进程就是一个正在运行中的程序。进程由程序代码、数据、变量、打开的文件(文件描述符)和一个环境组成。每一个进程都拥有一个独一无二的PID,称之为进程标示码。这是一个正整数,范围为2-32768。进程号为1的永远是init进程。UNIX/Lunix系统通过一个进程表的数据结构来管理进程。进程表包括进程的PID,进程的原创 2006-05-17 13:53:00 · 1686 阅读 · 0 评论 -
SHELL 命令简述
suid/guid分析suid/guid位可以使文件的执行者获得文件创建者或所在组的权限。比如当对某个脚本设置了suid位,那么其他用户在执行这一脚本时也会具有该脚本属主的相应权限,执行完毕后又回到原有权限。在设置该位之前,相应的执行权限位必须要被设置。下面是使用符号模式的设置。$ls$ rwx r-x r-x filename$chmod u+s filename$ls $ rws r-x原创 2006-04-21 17:02:00 · 1528 阅读 · 0 评论 -
Linux之向脚本传参数
Linux之向脚本传参数之前我们向脚本传递参数可以通过$1,$2等特殊变量。很方便,但是有些限制,就是不能超过9个参数。通过使用shift和getopts命令,我们可以十分方便的向脚本传递参数。一、shift通过使用shift,我们将参数选项从左向右移。看下面这个例子:#!/bin/sh# shift_sampleif [ $# -lt 1 ] echo "too few params" ex原创 2006-03-08 16:22:00 · 4855 阅读 · 0 评论 -
Linux Shell变量使用
一、本地变量的使用本地变量就如同局部变量一样,只在本SHELL中起作用。它不会影响到其他SHELL中的变量。1。显示变量值可以使用echo命令。需要注意的是,使用变量的时候必须在变量名前加上$符号2。清除变量使用unset命令可以清除命令。3。显示所有本地SHELL变量SHELL中预定义了一些环境变量。要想显示这些命令,可以使用set命令。另外,用户自己已经定义过的本地变量也会在其中显示原创 2006-03-01 11:41:00 · 2352 阅读 · 0 评论 -
控制流结构
控制流结构一、退出状态每个命令执行完之后都回返回状态,0表示执行成功,1表示执行失败二、循环和控制语句1。if then else语句格式如下:if 条件1 then 命令1elif 条件2 then 命令2else 命令3fi使用fi语句时,必须将then部分放在新行。要么就使用;分隔符。NULL为空命令,该命令永远为真。if 条件1then : #do nothingfi原创 2006-03-07 11:35:00 · 782 阅读 · 0 评论 -
条件测试
条件测试一、测试文件状态测试文件状态有两种方式,一种是使用test命令,另一种使用[]方式。test的格式如下:test condition[]格式如下:[ condition ]注意,condition两边需要加上空格。常规的文件状态测试条件如下:-d:目录-f:正规文件-L:符号链接-r:可读-s:文件非空-W:可写-u:文件suid位设置-x:可执行二、逻辑操作符如果需要同时比较两个文件的话原创 2006-03-02 14:50:00 · 861 阅读 · 0 评论 -
shell中定义函数
定义函数函数由两部分组成:函数标题和函数体。定义函数的格式:function 函数名(){ 命令1 。。。}函数可以放在同一个文件中作为一段代码,也可以放在只包含函数的单独文件中。所有函数在使用前必须定义。如果需要向函数传递参数,则可以使用特殊变量$1,$2...函数取得所传参数后,将原始参数传回SHELL脚本。函数里调用参数(变量)的转换以下划线开始,后加变量名。如需提前从函数中返回,可以使用r原创 2006-03-08 14:11:00 · 5780 阅读 · 0 评论 -
Linux下软件的安装与卸载
一、二进制分发软件包的安装与卸载 Linux软件的二进制分发是指事先已经编译好二进制形式的软件包的发布形式,其优点是安装使用容易,缺点则是缺乏灵活性,如果该软件包是为特定的硬件/操作系统平台编译的,那它就不能在另外的平台或环境下正确执行。 1、*.rpm形式的二进制软件包 安装:rpm -ivh *.rpm 卸载:rpm -e packgename 说明:RPM(RedHat Packge转载 2006-01-05 14:20:00 · 756 阅读 · 0 评论 -
Linux之线程篇
所有线程都有一个线程号,也就是Thread ID。其类型为pthread_t。通过调用pthread_self()函数可以获得自身的线程号。下面说一下如何创建一个线程。通过创建线程,线程将会执行一个线程函数,该线程格式必须按照下面来声明: void * Thread_Function(void *)创建线程的函数如下: int pthread_creat原创 2006-07-21 14:18:00 · 4824 阅读 · 3 评论