易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : linux

灵活使用Linux下的glimpse工具和tee命令


采用glimpse可以对源代码进行索引,这样在繁杂的代码里面,可以很快的找到关键字。
这个工具就是glimpse。使用方法就不多说了。可以查google嘛! ^__^
采用tee命令可以将glimpse查找出来的信息转存为文件。
就是这样:
    glimpse CONFIG_BOOTDELAY | tee bootdelay.txt
这样就查出了所有CONFIG_BOOTDELAY的文件,并且保存在bootdelay.txt里面,用gedit打开或者别的文本编辑工具打开,就一目了然了!!
......

介绍Linux下经典的文件传输工具: lrzsz


公司有个用ARM940T做的手持式产品,我们移植了一个uClinux上去,系统还是运行不错的。
因为没有带网口,只有USB转串口可以使用,所以想寻找一个稳定的传输途径,在host和device之间交换文件。问了很多人都不清楚,还是要靠自己找解决方法。
在google上找了半天,终于找到了一个可以通过串口传送文件的软件,这就是古董级的Unix工具:lrzsz。lrzsz可以通过Xmodem,Ymodem,Zmodem协议传送文件。
在uClinux的user目录下,我找到了这个lrzsz目录,说明uClinux应该是可以运行lrzsz的。编译uClinux的时候,选上lrzsz,编译,烧录进开发板,上电,运行,其中lrzsz编译出来两个文件,一个是lrz用于接收文件,一个是lsz用于发送文件。
在Windows上用超级终端打开串口,连上uClinux,输入以下命令:
    cd /bin
    lsz *
第一个命令是进入bin目录,第二个lsz命令是发送全部文件。
输入以后,超级终端立刻弹出一个界面,显示一个文件正在传送中,包括进度,文件名,使用的协议是zmodem,哈哈,很酷哦!
全部文件发送完毕后,都放在了一个默认目录下面。
从host端发送文件到device端,也是很容易的,但是要保证RamDisk有足够的空间。我一开始没 ......

linux 查找执行程序的当前路径

linux shell pwd 显示当前路径
假若有test.cpp
g++ test.cpp -o test
./test
想在test中找到当前执行程序所在的路径
可以再test.cpp中使用readlink函数
具体见如下实例:
#include<iostream>
#include<unistd.h>
#include<dirent.h>
#include<string.h>
#include<string>
using namespace std;
int main()
{
 char buff[1024];
 memset(buff,0,sizeof(buff));
 int n = readlink("/proc/self/exe",buff,1023);
 if(n<0)
 {
  cout<<"Get Path failed"<<endl;
  return -1;
 }
 string path = buff;
 int nLen = path.rfind('/');
 path.erase(nLen,path.length() - nLen);
 cout<<"zui zhong lu jing :"<<path<<endl;
 
 return 0;
}
谨记是/proc/self/exe 在此某人载过跟头 ......

linux下tcp服务器源码示例

#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <string.h>
#include <netinet/in.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
struct _NSS_HEADER
{
unsigned short ProtocolVersion; /* 协议版本信息 */
unsigned short MsgType; /* 消息类型 */
unsigned short TransactionNo; /* 传输编号 */
unsigned short PacketLength; /* 数据包长度,包括Header */
}NSS_HEADER;
void str_echo(int sockfd)
{
ssize_t readLen;
ssize_t writeLen;
char buf[8];
while ( true )
{
readLen = read(sockfd, buf, 8);
if (readLen < 0 && errno == EINTR)
{
continue;
}
else if ( readLen <= 0 )
{
perror( "read:");
r ......

linux下udp客户端源码示例

#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <string.h>
#include <netinet/in.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
typedef struct _NSS_HEADER
{
unsigned short ProtocolVersion; /* 协议版本信息 */
unsigned short MsgType; /* 消息类型 */
unsigned short TransactionNo; /* 传输编号 */
unsigned short PacketLength; /* 数据包长度,包括Header */
}NSS_HEADER;
int main(int argc, char **argv)
{
printf("client ip: %s\n", argv[1]);
printf("client port: %s\n", argv[2]);
printf("server ip: %s\n", argv[3]);
printf("server port: %s\n", argv[4]);
printf("\n service starting...\n\n");
int socketFd;
struct sockaddr_in svrAddr;
struct sockaddr_in localAddr;
socket ......

linux下udp服务器端源码示例

#include <errno.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <string.h>
#include <netinet/in.h>
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/socket.h>
int main(int argc, char **argv)
{
printf("server ip: %s\n", argv[1]);
printf("server port: %s\n", argv[2]);
printf("\n service starting...\n\n");
int socketFd;
struct sockaddr_in svrAddr;
struct sockaddr_in localAddr;
socketFd = socket (AF_INET, SOCK_DGRAM, 0);
if ( -1 == socketFd )
{
perror( "socket:" );
exit(-1);
}
// 设置地址可复用
int option = 1;
setsockopt( socketFd, SOL_SOCKET, SO_REUSEADDR, &option, sizeof(option) );
// 客户端IP
memset(&localAddr, 0, sizeof(localAddr));
localAddr.sin_family = AF_INET;
localAddr.sin_addr.s_addr = inet_addr( argv[1]);
......
总记录数:5772; 总页数:962; 每页6 条; 首页 上一页 [605] [606] [607] [608] 609 [610] [611] [612] [613] [614]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号