ʵս linuxÀ¶ÑÀ±à³ÌÖ®(°Ë) hci ÐÒé Ó¦Óñà³ÌʵÏÖ
¶ÔÓÚhci²ãµÄ±à³Ì ÊÇÏ൱¸´Ô ¹¦ÄÜÒ²ÊÇÇ¿´óµÄ,½¨ÒéѧϰÕß È¥¶Ábluez-libÖеÄhciºÍsdp
ÕâÀï¼òÒª½éÉÜ ÎÒÔÚ¿ª·¢¹«Ë¾µÄÏîÄ¿ÖÐµÄ Ò»¸öСµÄ»ù´¡¶¯×÷. ¸Ã±à³ÌµÄ¹ý³Ì»ù±¾ÀíÇåÁËhciºÍsdpµÄÏνӺÍÓ¦ÓÃ.Ï£Íû¶ÔѧϰÕßÓаïÖú
˵Ã÷Óв»µ½Ö®´¦,Íû´ó¼Ò¶à¶àÑо¿,²»Òª¾ÖÏÞ,ÿ¸öÈËÓÐ×Ô¼ºµÄ·½Ê½,Ò²ÐíÄãµÄÔÚÂß¼Ëã·¨ÉϱÈÎҵĺÃ!!
//scanÊÇÒ»¸öÀûÓÃhci²ãÐÒé »ñµÃÔ¶³ÌÀ¶ÑÀÉ豸µÄÀ¶ÑÀµØÖ·ºÍÀ¶ÑÀêdzƵĺ¯Êý;
int scan()
{
inquiry_info *ii = NULL;
int max_rsp, num_rsp;
int dev_id, sock, len, flags;
int i;
char addr[19] = { 0 };
char name[248] = { 0 };
dev_id = hci_get_route(NULL);
printf("\nhci%d is scanning......\n",dev_id);
//dev_id = lc[scannum].name;
sock = hci_open_dev( dev_id );
if (dev_id < 0 || sock < 0) {
system("reboot");
perror("opening socket");
return 0;
}
bdaddr_t src;
bacpy(&src, BDADDR_ANY);
len = 8;
max_rsp = 255;
flags = IREQ_CACHE_FLUSH;
ii = (inquiry_info*)malloc(max_rsp * sizeof(inquiry_info));
num_rsp = hci_inquiry(dev_id, len, max_rsp, NULL, &ii, flags);
if( num_rsp < 0 ) perror("hci_inquiry");
for (i = 0; i < num_rsp; i++) {
ba2str(&(ii+i)->bdaddr, addr);
memset(name, 0, sizeof(name));
int c=0;
if (sdp_get_channel_opush(&src, &(ii+i)->bdaddr, &c))
//printf("\n%d\n",c);
if(c>0)addadr(addr,c); //´Ë´¦ÊÇÎÒÔÚ×öÏîÄ¿ÖÐ×öµÄÒ»¸öÓëÓ¦ÓóÌÐòÁ¬½ÓµÄ½Ó¿Úº¯Êý,¹¦ÄÜÊÇÍê³ÉÔ¶³ÌÀ¶ÑÀÉ豸µÄµØÖ·ºÍÎļþ´«ÊäͨµÀºÅÌí¼Óµ½
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
ln
[root@www ~]# ln [-sf] 來Ô´檔 Ä¿標檔
選項與參數£º
-s £ºÈç¹û²»¼ÓÈκÎ參數¾Í進ÐÐ連結£¬ÄǾÍÊÇhard link£¬ÖÁì¶ -s ¾ÍÊÇsymbolic link
-f £ºÈç¹û Ä¿標檔 ´æÔÚ時£¬¾ÍÖ÷動µÄ將Ä¿જ ......
errno
ÊǸöint±äÁ¿£¬·µ»Ø´íÎó
ÓдíÎóʱʹÓ÷½·¨
fprintf(fp, "%s", strerror(errno))
perrorÓ÷¨
#include <stdio.h>
#include <stdlib.h>
#include<errno.h>
int main(void)
{
FILE *fp;
if((fp=fopen("aaa.txt","r+"))==NULL)
{
puts("²»ÄܽøÈ ......
¶¨Ê±Ö´ÐÐcrontabʹÓ÷½·¨Ïê½â
¡¡¡¡Ê¹Ó÷½Ê½:
¡¡¡¡crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }
¡¡¡¡ËµÃ÷:
¡¡¡¡crontab ÊÇÓÃÀ´ÈÃʹÓÃÕßÔڹ̶¨Ê±¼ä»ò¹Ì¶¨¼ä¸ôÖ´ÐгÌʽ֮ÓÃ,»»¾ä»°Ëµ,Ò²¾ÍÊÇÀàËÆÊ¹ÓÃÕßµÄʱ³Ì±í¡£-u user ÊÇÖ¸É趨ָ¶¨ user
µÄʱ³Ì±í,Õâ¸öǰÌáÊÇÄã±ØÐëÒªÓÐÆäȨÏÞ(±ÈÈç˵ÊÇ root)²ÅÄ ......
¸Õ¿ªÊ¼Ñ§Linux£¬¿´µ½ÄÇЩ·×·±¸´ÔÓµÄÄ¿Â¼ÕæÊǸоõÓеãÊÖ×ãÎ޴룬ÏÖÔÚ×ÜËãÖªµÀ×Ô¼ºµÄÈí¼þÓ¦¸Ã×°ÔÚ/usrĿ¼Ï£¬ºÇºÇ¡«¡«
ÏÂÃæÊǸ÷¸öĿ¼µÄ˵Ã÷£º
/bin
¸ÃĿ¼Öдæ·ÅLinuxµÄ³£ÓÃÃüÁÔÚÓеİ汾ÖÐÊÇһЩºÍ¸ùĿ¼ÏÂÏàͬµÄĿ¼¡£
/boot
¸ÃĿ¼Ï´æ·ÅµÄ¶¼ÊÇϵͳÆô¶¯Ê±ÒªÓõ½µÄ³ÌÐò£¬µ±ÓÃliloÒýµ¼Linuxʱ£¬»áÓõ½Õâ ......