
2、[root@server28 ~]# more a.txt
021
23
898990
314159265358975
3、[root@server28 ~]# sed -nr '/^[[:digit:]]{3,}$/p' a.txt|grep -v ^0
21312
898990
314159265358975
一、应用共享内存的使用,主要有以下几个API:ftok()、shmget()、shmat()、shmdt()及shmctl()。
1)用ftok()函数获得一个ID号.
应用说明:
在IPC中,我们经常用用key_t的值来创建或者打开信号量,共享内存和消息队列。
函数原型:
key_t ftok(const char *pathname, int proj_id)
Keys:
1)pathname一定要在系统中存在并且进程能够访问的
3)proj_id是一个1-255之间的一个整数值,典型的值是一个ASCII值。
当成功执行的时候,一个key_t值将会被返回,否则-1被返回。我们可以使用strerror(errno)来确定具体的错误信息。
考虑到应用系统可能在不同的主机上应用,可以直接定义一个key,而不用ftok获得:
#define IPCKEY 0x344378
2)shmget()用来开辟/指向一块共享内存的函数
应用说明:
shmget()用来获得共享内存区域的ID,如果不存在指定的共享区域就创建相应的区域。
函数原型:
int shmget(key_t key, size_t size, int shmflg)
key_t key 是这块共享内存的标识符。如果是父子关系的进程间通信的话,这个标识符用IPC_PRIVATE来代替。如果两个进程没有任何关系,所以就用ftok()算出来一个标识符(或者自己定义一个)使用了。
int size 是这块内存的大小.
int flag 是这块内存的模式(mode)以及权限标识。
模式可取如下值:
IPC_CREAT 新建(如果已创建则返回目前共享内存的id)
IPC_EXCL 与IPC_CREAT结合使用,如果已创建则则返回错误
然后将“模式” 和“权限标识”进行“或”运算,做为第三个参数。
如:IPC_CREAT | IPC_EXCL | 0640
例子中的0666为权限标识,4/2/1 分别表示读/写/执行3种权限,第一个0是UID,第一个6(4+2)表示拥有者的权限,第二个4表示同组权限,第3个0表示他人的权限。
这个函数成功时返回共享内存的ID,失败时返回-1。
关于这个函数,要多说两句。
创建共享内存时,shmflg参数至少需要 IPC_CREAT | 权限标识,如果只有IPC_CREAT 则申请的地址都是k=0xffffffff,不能使用;
获取已创建的共享内存时,shmflg不要用IPC_CREAT(只能用创建共享内存时的权限标识,如0640),否则在某些情况下,比如用ipcrm删除共享内存后,用该函数并用IPC_CREAT参数获取一次共享内存(当然,获取失败),则即使再次创建共享内存也不能成功,此时必须更改key来重建共享内存。
1. 如果你只想看文件的前100行,可以使用head命令,如
head -100 filename
2. 如果你想查看文件的后100行,可以使用tail命令,如:
tail -100 filename 或 tail -n 100 filename
3. 查看文件中间一段,你可以使用sed命令,如:
sed -n '100,200p' filename
这样你就可以只查看文件的第100行到第200行。
截取的文件可以用重定向输入到新的文件中:
head -100 filename >a.txt
也可以在robot里面使用read 打印出来
使用命令:
ps -aux | grep tomcat/8080
方法二:直接使用 netstat -anp | grep portno
即:netstat –anp | grep 8080
查看端口命令 https://www.cnblogs.com/CEO-H/p/7794306.html
linux替换目录下所有文件中的某字符串
比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做:
sed -i "s/zhangsan/lisi/g" `grep zhangsan -rl /modules`
解释一下:
-i 表示inplace edit,就地修改文件
-r 表示搜索子目录
-l 表示输出匹配的文件名
linux查找目录下的所有文件中是否含有某个字符串
查找目录下的所有文件中是否含有某个字符串
find .|xargs grep -ri "php"
查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名
find .|xargs grep -ri "php" -l
ip addr 查看ip地址
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)