Linux
文章平均质量分 63
yangzheng114
这个作者很懒,什么都没留下…
展开
-
shell中条件判断if中的-z到-d的意思
shell中条件判断if中的-z到-d的意思2011-09-05 10:30[ -a FILE ] 如果 FILE 存在则为真。[ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。[ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。[ -d FILE ] 如果 FILE 存在且是一个目录则为真。[ -e FILE ] 如果转载 2014-03-03 15:00:57 · 584 阅读 · 0 评论 -
Android静默安装
想要做到静默安装,其实就是要有权限执行pm install命令。准备工作其实就两步:1、获取执行权限2、执行命令我们首先介绍第二步,如何执行pm install命令:关键代码其实就一句:Runtime.getRuntime().exec("pm install xxx.apk");网上也有人提到利用BufferReader读取控制台的输出Success来判断是否转载 2014-02-20 11:24:53 · 583 阅读 · 0 评论 -
关于网络编程时候SIGPIPE信号
在linux下写socket的程序的时候,如果尝试 send 到一个 disconnected 的 socket上,(读取端已经关闭)就会让底层抛出一个SIGPIPE信号。该信号默认情况下会终止当前进程,大多数时候这都不是我们期望的。首先用代码测试正常的 server client 端TCP通信:http://blog.csdn.net/xsckernel/article/deta转载 2014-03-06 09:52:05 · 2013 阅读 · 0 评论 -
sigaction函数解析
sigaction函数解析sigaction函数的功能是检查或修改与指定信号相关联的处理动作(可同时两种操作)。他是POSIX的信号接口,而signal()是标准C的信号接口(如果程序必须在非POSIX系统上运行,那么就应该使用这个接口)给信号signum设置新的信号处理函数act, 同时保留该信号原有的信号处理函数oldactint sigaction(int signo转载 2014-03-06 09:51:18 · 562 阅读 · 0 评论 -
core dump
adb shellulimit -aulimit -c unlimitedam -n原创 2014-03-06 21:12:13 · 595 阅读 · 0 评论 -
linux多线程编程,你还在用sleep么?用pthread
linux多线程编程,你还在用sleep么?用pthread_cond_timedwait吧发表于 2011 年 06 月 02 日 由 dllgwgy摘要:多线程编程中,线程A循环计算,然后sleep一会接着计算(目的是减少CPU利用率);存在的问题是,如果要关闭程序,通常选择join线程A等待线程A退出,可是我们必须等到sleep函数返回,该线程A才能正常退出,这无疑减慢了转载 2014-03-06 21:13:57 · 2485 阅读 · 0 评论 -
Linux信号量编程实例
本例示范Linux信号量的基本用法。该范例使用了两个线程分别对一个公用队列进行入队和出队操作,并用信号量进行控制,当队列空时出队操作可以被阻塞,当队列满时入队操作可以被阻塞。主要用到的信号量函数有:sem_init:初始化信号量sem_t,初始化的时候可以指定信号量的初始值,以及是否可以在多进程间共享。sem_wait:一直阻塞等待直到信号量>0。sem_timedwait:阻转载 2014-03-06 13:55:16 · 1602 阅读 · 0 评论 -
linux ulimit命令参数及用法详解--linux限定shell启动进程资源
功能说明:控制shell程序的资源。语 法:ulimit [-aHS][-c ][-d ][-f ][-m ][-n ][-p ][-s ][-t ][-u ][-v ]补充说明:ulimit为shell内建指令,可用来控制shell执行程序的资源。参 数: -a 显示目前资源限制的设定。 -c 设定core文件的最大值,单位为区块。 -d转载 2014-03-06 13:56:55 · 640 阅读 · 0 评论 -
Android下app生成coredump方法
linux内核默认生成的coredump文件创建在根目录,android本身的权限管理,会导致创建失败:可以使用下面的方法来修改创建目录:ulimit -c unlimitedmkdir /tmpchmod 777 /tmpecho "/tmp/core-%e.%p.%u" >/proc/sys/kernel/core_pattern 另外需要在你的c代码部分修改c原创 2014-03-06 13:58:10 · 1505 阅读 · 0 评论 -
recv函数返回值说明
recv函数int recv( SOCKET s, char FAR *buf, int len, int flags);不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。该函数的第一个参数指定接收端套接字描述符; 第二个参数指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据; 第三个参数指明buf的长度; 第四个参数一般置0。这里只描述同步S转载 2014-03-06 13:54:33 · 616 阅读 · 0 评论 -
pthread编程基础
Linux系统下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a。与vxworks上任务的概念类似,都是调度的最小单元,都有共享的堆、栈、代码区、全局变量等。 2. 创建线程int pthread_create(pthread_t * thread,转载 2014-03-09 14:23:47 · 566 阅读 · 0 评论 -
fcntl使用
功能描述:根据文件描述词来操作文件的特性。#include #include int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(int fd, int cmd, struct flock *lock);[描述]fcntl()针对(文件)描述符提供控制。参数fd转载 2014-03-09 14:47:00 · 502 阅读 · 0 评论 -
Pthreads并行编程之spin lock与mutex性能对比分析
POSIX threads(简称Pthreads)是在多核平台上进行并行编程的一套常用的API。线程同步(Thread Synchronization)是并行编程中非常重要的通讯手段,其中最典型的应用就是用Pthreads提供的锁机制(lock)来对多个线程之间共 享的临界区(Critical Section)进行保护(另一种常用的同步机制是barrier)。Pthreads提供了多种锁机转载 2014-03-09 14:14:53 · 525 阅读 · 0 评论 -
GDB调试精粹及使用实例
一:列文件清单 1. List (gdb) list line1,line2 二:执行程序 要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符()和外壳通配符(*、?、[、])在内。 如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。 利用set args 命令就可以修改转载 2014-03-09 13:54:30 · 526 阅读 · 0 评论 -
chown命令
chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符。系统管理员经常使用chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。 1.命令格式: chown [选项]... [所有者][:[组]] 文件... 2.命令功能:转载 2014-03-27 13:15:02 · 505 阅读 · 0 评论 -
shell查找文件命令解析比较
Linux查找文件的命令作者:slash转载自:http://libo879.spaces.live.com/Blog/cns!BA7469826216AB0A!124.entry1.whereis 文件名 特点:快速,但是是模糊查找,例如 找 #whereis mysql 它会把mysql,mysql.ini,mysql.*所在的目录都找出来.一般的查找都用这条命令.转载 2014-03-24 22:27:52 · 774 阅读 · 0 评论 -
(总结)Linux的chattr与lsattr命令详解
PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux系统都是2.6以上内核了。通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chat转载 2016-01-22 16:37:00 · 455 阅读 · 0 评论 -
brew 安装命令
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"原创 2014-03-05 15:02:51 · 582 阅读 · 0 评论 -
在mac下设置环境变量
在mac下设置环境变量 在基于unix/linux的操作系统下进行程序开发,使用环境变量将会方便。通过设置环境变量将可以在任意目录通过输入程序名来执行设定目录下的程序。不需要通过cd将工作目录改变到程序目录再执行程序。而且免去了输入"./"的麻烦。 长话短说,具体步骤如下(在bash下): www.2cto.com 1,打开 应用程序 -> 实用工具转载 2014-03-05 15:01:13 · 546 阅读 · 0 评论 -
source命令
source命令(从 C Shell 而来)是bash shell的内置命令。点命令,就是一个点符号,(从Bourne Shell而来)是source的另一名称。同样的,当前脚本中设置的变量也将作为脚本的环境,source(或点)命令通常用于重新执行刚修改的初始化文件,如 .bash_profile 和 .profile 等等。例如,如果在登录后对 .bash_profile 中的 EDITE转载 2014-03-03 15:01:39 · 549 阅读 · 0 评论 -
Linux 杀死一个进程
ps aux | lesskill pid转载 2014-03-03 17:15:39 · 632 阅读 · 0 评论 -
sed系列:行或者模式匹配删除特定行
“p” command prints the buffer (remember to use -n option with “p”) “d” command is just opposite, its for deletion. ‘d’ will delete the pattern space buffer and immediately starts the next cycle.转载 2014-03-03 17:44:38 · 2175 阅读 · 0 评论 -
pushd命令使用
pushd使用示例:如果我希望在/usr/src和/etc/X11和/boot/grub之间切换,则可以在命令行下输入:pushd /usr/srcpushd /etc/X11pushd /boot/grub然后输入dirs查看,事实上每次输入都会显示当前pushd堆栈中的内容。可以看到显示三个路径:/boot/grub /etc/X11 /转载 2014-03-03 17:12:02 · 3907 阅读 · 0 评论 -
Cocos2d-x PluginX (一)使用手册
简介Plugin-x是cocos2d-x最近版本中引入的特性,旨在解决第三方SDK接入的问题,最大程度的简化接入工作,增加可重用性。第一部分主要介绍PluginX如何使用,不涉及设计原理相关内容。${cocos2d-x root}\plugin 目录下是PluginX所在位置,从设计和相关文档看感觉这东西相当复杂,但实际上使用起来非常简便。(复杂的设计是为了使用上简单方便)转载 2014-03-03 17:19:47 · 797 阅读 · 0 评论 -
在shell脚本中调用另一个脚本的三种不同方法(fork, exec, source)
fork ( /directory/script.sh) :如果shell中包含执行命令,那么子命令并不影响父级的命令,在子命令执行完后再执行父级命令。子级的环境变量不会影响到父级。fork是最普通的, 就是直接在脚本里面用/directory/script.sh来调用script.sh这个脚本.运行的时候开一个sub-shell执行调用的脚本,sub-shell执行的时转载 2014-03-04 15:45:32 · 560 阅读 · 0 评论 -
Linux用shell修改文件内容
sed -i 's/abc/xxx/g' fileabc修改前的字符串xxx是修改后的字符串file是要被修改的文件例如:我有一个文件是map_server#!/bin/bash# chkconfig: 2345 10 90# description: Starts and Stops the MapServer.DIRECTORY=xxxxxx转载 2014-02-14 10:53:55 · 1827 阅读 · 0 评论 -
mkdir命令
linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。1.命令格式:mkdir [选项] 目录...2.命令功能:通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录。要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限。并且转载 2014-02-08 10:11:28 · 550 阅读 · 0 评论 -
export 命令
shell与export命令(将一个shell局部变量变成一个shell全局变量)用户登录到Linux系统后,系统将启动一个用户shell。在这个shell中,可以使用shell命令或声明变量,也可以创建并运行shell脚本程序。运行shell脚本程序时,系统将创建一个子shell。此时,系统中将有两个shell,一个是登录时系统启动的shell,另一个是系统为运行脚本程序创建的she转载 2014-02-08 10:46:15 · 877 阅读 · 0 评论 -
使用plist创建精灵并执行动画
素材图:然后使用Texture Packer放到一张图片上,并生成plist文件接下来直接上代码 [cpp] view plaincopyCCSize size = CCDirector::sharedDirector()->getWinSize(); //获得屏幕的尺寸 CCArray* pA转载 2014-03-05 15:19:09 · 693 阅读 · 0 评论 -
Linux GCC常用命令
1简介2简单编译2.1预处理2.2编译为汇编代码(Compilation)2.3汇编(Assembly)2.4连接(Linking)3多个程序文件的编译4检错5库文件连接5.1编译成可执行文件5.2链接5.3强制链接时使用静态链接库1简介GCC 的意思也只是 GNU C Compiler 而已。转载 2014-03-04 15:46:31 · 1119 阅读 · 0 评论 -
tar 解压命令
tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到转载 2014-03-04 15:48:46 · 505 阅读 · 0 评论 -
linux rm 命令详解
名称:rm 使用权限:所有使用者 使用方式:rm [options] name... 说明:删除档案及目录。 参数: -i 删除前逐一询问确认。 -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。 -r 将目录及以下之档案亦逐一删除。 范例: 删除所有C语言程式档;删除前逐一询问确认 : rm -i *.c 将 Finished 子目录及子目录中转载 2014-02-08 09:53:58 · 1013 阅读 · 0 评论 -
mac 命令
OSX 的文件系统 OSX 采用的Unix文件系统,所有文件都挂在跟目录 / 下面,所以不在要有Windows 下的盘符概念。 你在桌面上看到的硬盘都挂在 /Volumes 下。 比如接上个叫做 USBHD的移动硬盘,桌面上会显示出一个硬盘图标,它实际在哪里呢? 在终端里执行 ls /Volumes/USBHD, 看看显示出的是不是这个移动硬盘的内容。 根目录位置是 / 核心转载 2014-03-05 09:43:05 · 455 阅读 · 0 评论 -
shell脚本批量修改目录下所有文件中的部分语句
#!/bin/shfunction scandir() { firstdir=$1 cd $firstdir for filename in `ls $firstdir`;do if [ -d $filename ];then firstdir=`pwd`/$filename cd $firstdir转载 2014-02-14 10:56:20 · 831 阅读 · 1 评论 -
vi使用指南
编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少的部件。Unix及其相似的ix操作系统系列中,为方便各种用户在各个不同的环境中使用,提供了一系列的ex编辑器,包括 ex, edit,ed 和vi.其中ex,edit,ed都是行编辑器,现在已很少有人使用,Unix提供他们的原因是考虑到满足各种用户特别是某些终端用户的需要。值得庆幸的是,Unix提供了全屏幕的Vi编辑器,转载 2014-03-05 09:44:19 · 424 阅读 · 0 评论