linux/unix
文章平均质量分 71
沈万三gz
浮躁一分,到处遍招尤悔因循二字,从来误尽英雄。
展开
-
linux学习--linux目录详解2
初学Linux,首先需要弄清Linux 标准目录结构/root --- 启动Linux时使用的一些核心文件。如操作系统内核、引导程序Grub等。home --- 存储普通用户的个人文件ftp --- 用户所有服务httpdsambauser1user2bin --- 系统启动时需要的执行文件(二进制)sbin --- 可执行程序的目录,但大多存放涉及系统管理的命令。只有ro转载 2014-07-16 09:47:37 · 569 阅读 · 0 评论 -
工作记录--makefile报错:makefile:2: *** missing separator. Stop.
makefile:2: *** missing separator. Stop.错误:makefile内容: *************** main.o :main.c gcc -g -c main.c *************** make 回车 makefile:2: *** missing转载 2014-06-13 16:56:35 · 1675 阅读 · 0 评论 -
工作记录----makefile必备语法
1.编译和链接源文件首先会生成中间目标文件,再由中间目标文件生成执行文件。在编译时,编译器只检测程序语法,和函数、变量是否被声明。如果函数未被声明,编译器会给出一个警告,但可以生成Object File。而在链接程序时,链接器会在所有的Object File中找寻函数的实现,如果找不到,那到就会报链接错误码(Linker Error),在VC下,这种错误一般是:Link 2001错误,意思说是转载 2014-06-12 14:48:47 · 924 阅读 · 0 评论 -
工作记录--makefile 伪目标
伪目标是这样一个目标:它不代表一个真正的文件名,在执行make时可以指定这个目标来执行其所在规则定义的命令,有时我们也可以将一个伪目标称为标签。使用伪目标有两点原因:1. 避免在我们的Makefile中定义的只执行命令的的目标(此目标的目的为了执行执行一系列命令,而不需要创建这个目标)和工作目录下的实际文件出现名字冲突。2. 提高执行make时的效率,特别是对于一个大型的工程来说,编译的效率也许你转载 2014-06-16 09:33:07 · 606 阅读 · 0 评论 -
linux c 网络编程学习
1. 建议先把经典的《TCP/IP详解》三卷书的卷1看了,这样对TCP/IP协议有一个系统的了解。2. 用wireshark这个著名的开源工具,捕捉网络数据包,分析。3. 可以看看Linux 1.0的TCP/IP协议栈的实现,因为现在的2.6的kernel里面的TCP/IP协议栈的实现很复杂,而1.0的是比较简单的,应当是Linux带网络功能的第一个版本。4. 再分析一个网络驱动程序。转载 2014-07-07 12:53:40 · 862 阅读 · 0 评论 -
程序员面试知识点
linux和os:netstat tcpdump ipcs ipcrm (如果这四个命令没听说过或者不能熟练使用,基本上可以回家,通过的概率较小,这四个命令的熟练掌握程度基本上能体现面试者实际开发和调试程序的经验)cpu 内存 硬盘 等等与系统性能调试相关的命令必须熟练掌握,设置修改权限 tcp网络状态查看 各进程状态 抓包相关等相关命令 必须熟练掌握awk sed需掌握共享内存的使用实现转载 2014-07-07 12:47:48 · 1340 阅读 · 0 评论 -
工作记录--make clean
make clean仅仅是清除之前编译的可执行文件及配置文件。 而make distclean要清除所有生成的文件。Makefile在符合GNU Makefiel惯例的Makefile中,包含了一些基本的预先定义的操作:make根据Makefile编译源代码,连接,生成目标文件,可执行文件。make clean清除上次的make命令所产生的object文件(后缀为“.o转载 2014-06-16 08:32:50 · 1025 阅读 · 0 评论 -
Linux下Makefile的automake生成全攻略
原文:http://www.yesky.com/120/1865620.shtml转载 2014-06-19 10:07:05 · 679 阅读 · 0 评论 -
工作记录--makefile语法000
make命令会自动读取当前目录下的Makefile文件[33],完成相应的编译步骤。Makefile由一组规则(Rule)组成,每条规则的格式是:target ... : prerequisites ... command1 command2 ...例如:main: main.o stack.o maze.o gcc main.o stack.o maze.o -o main转载 2014-06-16 09:46:02 · 665 阅读 · 0 评论 -
工作记录--debian6 修改IP
原文: http://www.jb51.net/os/other/40363.html1.IP地址设置: /etc/network/interface2.转载 2014-06-19 17:31:18 · 667 阅读 · 0 评论 -
Centos底部面板图标不见的解决办法
Step 1: In Linux Desktop, press Ctrl+alt+f2Step 2: Login then type the following command:$cd$rm –rf .gconf$rm –rf .gconfd$rm –rf .gnome$rm –rf .gnome2Step 3: Press Ctrl+alt+f7 to be back转载 2014-08-06 09:16:24 · 3465 阅读 · 0 评论 -
工作记录----securityCRT上传下载
1.需要安装一下的包,才能在windows机器和linux机器原创 2014-07-31 16:06:18 · 882 阅读 · 0 评论 -
学习记录----linux命令学习
1.在linux下查找文件或者按内容查找文件grep -r "*****" ./目录原创 2014-07-25 10:19:13 · 632 阅读 · 0 评论 -
linux编程--有名管道
1.有名管道FIFO 管道如果无名,只能在共同血缘进程中使用;管道如果有名,就可以在整个系统中使用。FIFO管道,有名的管道,它以一种特殊的文件类型存储于文件系统中,以供血缘关系进程访问。1.有名管道的建立: shelle命令和C程序都可以创建有名管道,其中创建有名管道的shell命令如下:1)命令mknod创建管道可以创建特殊类型的文件,其实用方式如下 /etc/转载 2014-08-18 14:29:36 · 1106 阅读 · 0 评论 -
linux核心文件目录详解
/mnt 是被系统管理员使用,手动挂载一些临时媒体设备的目录。/medai 是自动挂载的目录,比如我们的U盘插在ubuntu下回自动挂载,就会在/media下生成一个目录,这个目录就是U盘所在目录,或者说文件。/dev 不是存放设备的驱动程序,而是作为访问外部设备文件的接口。比如,我们的U盘,插入linux系统后,用fdisk -l查看分区,显示文件为/dev/sda1。则我们可以将u盘挂转载 2014-08-19 14:15:58 · 532 阅读 · 0 评论 -
linux套接口编程基础
1.转载 2014-08-19 16:38:45 · 679 阅读 · 0 评论 -
linux编程--管道
1.一、管道的概念管道是一种队列类型的数据结构,它的数据从一端输入,另一端输出。转载 2014-08-18 12:28:38 · 570 阅读 · 0 评论 -
GDB 调试演示
作为内置和最常用的调试器,GDB 显然有着无可辩驳的地位。熟练使用 GDB,就好像所有 Linux 下的开发人员建议你用 VIM 一样,是个很 "奇怪" 的情节。测试用源代码。#include int test(int a, int b){ int c = a + b; return c;}int main(int argc, char* argv[]){转载 2014-08-18 15:52:53 · 582 阅读 · 0 评论 -
ubantu软件源更新的问题
1.gedit /etc/apt/sources.list转载 2014-08-19 09:32:43 · 688 阅读 · 0 评论 -
linux编程中的socket编程--server端ip0.0.0.0问题
1.INADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”、“任意地址”。 一般来说,在各个系统中均定义成为0值。2.一般情况下,如果你要建立网络服务器应用程序,则你要通知服务器操作系统:请在某地址 xxx.xxx.xxx.xxx上的某端口 yyyy上进行侦听,并且把侦听到的数据包发送给我。这个过程,你是通过bind()系统调用完成的。——转载 2014-08-19 10:46:37 · 4225 阅读 · 0 评论 -
linux基础--开机自启动
方法一将自己写好的脚本或命令写入/etc/rc.local文件中。系统会根据该文件来启动所指定的脚本或命令。 下面为httpd服务做了一个启动脚本。功能:在Linux系统启动时检查httpd服务是否启动成功,如果服务已启动,将日志写入log。如果没有启动,则立即启动httpd服务,并将日志写入log。[web@info data]$ vi/data/http.sh#/b转载 2014-08-21 08:45:19 · 706 阅读 · 0 评论 -
c语言中调用shell脚本
C程序调用shell脚本共有三种方式:system()、popen()、exec系列函数转载 2014-08-21 09:06:11 · 3079 阅读 · 0 评论 -
网络基础知识----ftp
1.IP地址换换成数字地址的方法如下每一段的ip先转换成16进制例:219.239.110.138---->DB.EF.6E.8A十六进制的DBEF6E8A转换成十进制具体计算过程如下:219*2563+ 239*2562+110*2561+138*2560=3689901706DBEF6E8A--->3689901706转换后的3689901706即为ip 219转载 2014-09-05 09:11:34 · 1834 阅读 · 0 评论 -
linux编程技巧--sourceinsight使用技巧
1.1.3 创建便捷的快捷键快乐工作 1.3.1 几个较常用的快捷键默认情况下,SI已经定义了很多非常实用的快捷键: F5 指定行号,实现行跳转,在遇到编译错误的时候,能特别方便的找到出错行。 Shift+F8 高亮显示指定标识,快速浏览标识的使用情况。 Ctrl+鼠标点击标识 直接跳转至标识定义处。 Ctrl+F 本文件内查转载 2014-09-05 09:36:31 · 1048 阅读 · 0 评论 -
linux-多线程
一、什么是线程? 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源。二、什么时候使用多线程? 当多个任务可以并行执行时,可以为每个任务启动一个线程。三、线程的创建转载 2014-08-08 16:16:12 · 420 阅读 · 0 评论 -
linux基础--debian开机自启动脚本
1.debian没有rc.local这个文件的需要自建连接:touch /etc/rc.localchmod 755 /etc/rc.localcd /etc/rc2.d ln -s ../rc.local ./S99rc.localcd /etc/rc3.dln -s ../rc.local ./S99rc.local然后将要执行的shell路径加到rc.local末尾注意给权限2.转载 2014-08-21 08:36:55 · 5335 阅读 · 0 评论 -
linux编程--基本数据类型size_t
1.在C++中,设计 size_t 就是为了适应多个平台的 。size_t的引入增强了程序在不同平台上的可移植性。size_t是针对系统定制的一种数据类型,一般是整型,因为C/C++标准只定义一最低的位数,而不是必需的固定位数。而且在内存里,对数的高位对齐存储还是低位对齐存储各系统都不一样。为了提高代码的可移植性,就有必要定义这样的数据类型。一般这种类型都会定义到它具体占几位内存等。当然,有些是编转载 2014-09-05 10:48:59 · 2938 阅读 · 0 评论 -
linux编程--typedef
1.5. typedef & 复杂的变量声明在编程实践中,尤其是看别人代码的时候,常常会遇到比较复杂的变量声明,使用typedef作简化自有其价值,比如:下面是三个变量的声明,我想使用typdef分别给它们定义一个别名,请问该如何做?>1:int *(*a[5])(int, char*);>2:void (*b[10]) (voi转载 2014-09-05 11:27:20 · 791 阅读 · 0 评论 -
linux基础命令--chmod/cp(目录/权限)
1.+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。-c : 若该档案权限确实已经更改,才显示其更改动作-f : 若该档案权限无法被更改也不要显示错误讯息-v : 显示权限变更的详细资料-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的转载 2014-09-05 11:30:44 · 3336 阅读 · 4 评论 -
linux基础命令---ps -ef/ps -aux
1.Linux操作系统PS命令详细解析,要对系统中进程进行监测控制,用 ps 命令满足你。/bin/psps 是显示瞬间行程的状态,并不动态连续;如果想对进程运行时间监控,应该用 top 工具。kill 用于杀死进程。转载 2014-09-05 11:58:56 · 1010 阅读 · 0 评论 -
linux编程--gdb
1.: 8多个源文件,gdb时如何在指定的某个文件中设置断点?谢谢[复制链接]转载 2014-09-05 11:35:34 · 496 阅读 · 0 评论 -
c语言学习--空指针
1.void* 这不叫空指针,这叫无确切类型指针.这个指针指向一块内存,却没有告诉程序该用何种方式来解释这片内存.所以这种类型的指针不能直接进行取内容的操作.必须先转成别的类型的指针才可以把内容解释出来.还有'\0',这也不是空指针所指的内容. '\0'是表示一个字符串的结尾而已,并不是NULL的意思.真正的空指针是说,这个指针没有指向一块有意义的内存,比如说:char* k;转载 2014-08-08 14:34:59 · 1436 阅读 · 0 评论 -
pthread_create函数编译时报错:undefined reference to 'pthread_create'
1.错误:pthread_create函数编译时报错:undefined reference to 'pthread_create'pthread_create()和pthread_atfork()函数使用时应注意的问题:源代码:#include void pmsg(void* p){ char *msg; msg = (ch转载 2014-08-08 08:30:45 · 666 阅读 · 0 评论 -
linux编程--默认参数
1. 如果一个函数中有多个默认参数,则形参分布中,默认参数应从右至左逐渐定义。当调用函数时,只能向左匹配参数。即默认参数右边全是默认参数。2.转载 2014-09-05 14:16:05 · 920 阅读 · 0 评论 -
c语言编程---指针、引用
1.曾经提到如何判断指针是否为空的问题.很显然,if (p == NULL), if (p == 0)和if(p),都能够完成这一任务,差别在于可读性方面.转载 2014-09-05 15:31:40 · 1149 阅读 · 0 评论 -
linux编程--shell的判断和比较
1 shell 的$! ,$?, $$,$@$n $1 the first parameter,$2 the second...$# The number of command-line parameters.$0 The name of current program.$? La转载 2014-08-21 14:00:56 · 498 阅读 · 0 评论 -
linux基础--tar命令说明
tar -xzvf .tar.gz tar [-cxtzjvfpPN] 文件与目录 .... 参数: -c :建立一个压缩文件的参数指令(create 的意思); -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!转载 2014-08-21 14:08:54 · 549 阅读 · 0 评论 -
c语言编程--指针常量、常量指针、空指针、野指针
1.常量指针的语句格式为:const 类型 *指针常量名=&变量名;如:const int k=5,t=8;const int *p=&k;*p=12;(错误) //常量指针指向的内容是常量,不可以赋值p=&t;(正确) //常量指针的地址可以修改指针所指向的内容不能改变,但是可以改变其所指向的地址。转载 2014-09-05 16:39:34 · 762 阅读 · 0 评论 -
Linux操作系统的内存使用方法详细解析
一提到内存管理,我们头脑中闪出的两个概念,就是虚拟内存,与物理内存。这两个概念主要来自于linux内核的支持。 Linux在内存管理上份为两级,一级是线性区,类似于00c73000-00c88000,对应于虚拟内存,它实际上不占用实际物理内存;一级是具体的物理页面,它对应我们机器上的物理内存。 这里要提到一个很重要的概念,内存的延迟分配。Linux内核在用户申请内存的时候,只是给它分配了一转载 2014-09-05 17:01:05 · 577 阅读 · 0 评论 -
linux 启动详解
机器加电启动后,BIOS开始检测参数,如内存的大小,日期和时间,磁盘设备以及这些磁盘设备用来引导的顺序,通常情况下,BIOS都是被配置成首先检查软驱或者光驱(或两者都检查),然后再尝试从硬盘引导。如果在这些可移动的设备中,没有找到可引导的介质,那么BIOS通常是转向第一块硬盘最初的几个扇区,寻找用于装载操作系统的指令。装载操作系统的这个程序就是boot loader.里面的bo转载 2014-09-05 17:06:11 · 651 阅读 · 0 评论