Linux
文章平均质量分 54
小小攻城师
这个作者很懒,什么都没留下…
展开
-
Linux安装和删除程序
1.可以使用sudo apt-get install *** ***代表文件名字,这个命令是从你的系统设置的源文件列表,即下载的源地址上查找并下载。2.可以使用 sudo dpkg -i *** ***代表安装的程序名称,是已经下载下来的。这个必须由完整的路径名或程序在当前路径下,并且程序后缀名为.deb. -i参数为install原创 2011-01-23 19:00:00 · 2554 阅读 · 0 评论 -
linux中$符号的常用法
<br />转自: http://linux.vbird.org/剛剛我們提到了兩種變數取用的方法,分別是這樣:[root@linux ~]# echo $HOME[root@linux ~]# echo ${HOME}那麼,在那個 ${variable} 的使用方法中,其實,我們還可以將變數進行一些修訂的工作喔! 只要加上一些字符標誌,後面再接著使用比對字串,就能夠修改變數的內容了! 我們取底下的例子來說明:在底下的例子中,假設我的變數名稱為 vbird ,且內容為 /home/vbird/tes转载 2011-05-03 09:29:00 · 8102 阅读 · 0 评论 -
^M: bad interpreter:解决方法
转自: http://apps.hi.baidu.com/share/detail/22477349在Linux中执行.sh脚本,异常提示/bin/sh^M: bad interpreter: No such file or directory。分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。解决:1)在windows下转换: 利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执转载 2011-05-03 11:51:00 · 12256 阅读 · 0 评论 -
如何查看头文件名称的意义
记得刚开始学C语言的时候对头文件的名称只是死记硬背,当时就记得要用printf、scanf等等的话要加stdio.h。后来在学习的过程中忽然发现这些头文件的命名是有意义,比如stdio的意思就是standard buffered input/output的缩写,stdlib就是standard library definitions的缩写。现在回头想想可笑,这些命名肯定不是随便命名的,但当时对于一个刚接触编程的人来说还是觉得像哥伦布发现新大陆一样。今天在学linux下的文件操作,用到了fcntl.h这个头文原创 2011-05-05 15:42:00 · 4112 阅读 · 1 评论 -
vim常用命令大全
转自:鸟哥 http://linux.vbird.org/命令列內容說明如前所述,所謂的命令列或命令模式,就是在最下面一行沒有顯示 『--INSERT--』或者『--REPLACE--』 字樣的時候。通常在命令列中的指令有下面幾種:(注意,當按下 『:』 時,游標會自動移動到螢幕的最下面一行!)一般模式: 移動游標的方法h 或 向左方向鍵(←)游標向左移動一個字元j 或 向下方向鍵(↓)游標向下移動一個字元k 或 向上方向鍵(↑)游標向上移動一個字元l 或 向右方向鍵(→)游標向右移動一個字元如果想转载 2011-05-07 12:44:00 · 1366 阅读 · 0 评论 -
man命令详解
man相信大家都在用?但是man命令你真的了解了吗?man 4 man前面哪个数字是什么意思? man -f man的f参数是什么意思?还有man的查找?/这两个呢?man如何配置等等。转载 2011-05-23 11:08:00 · 10345 阅读 · 0 评论 -
gdb命令详解
个人笔记:1. 要想使用gdb调试程序,必须在编译的时候加入调试信息,用-g命令,比如 gcc -g -o hello.exe hello.c2. 使用gdb 可以执行文件名打开调试文件3. 使用list查看源代码(list默认显示10行,在gdb下回车默认执行上一个原创 2011-03-08 15:24:00 · 3473 阅读 · 0 评论 -
ibus输入法没有选词框
killall ibus-daemonibus-daemon -d原创 2011-11-30 14:56:23 · 3107 阅读 · 0 评论 -
GCC扩展
转自候佩CSDN博客,地址:http://blog.csdn.net/mydo/article/details/3738336GNC CC是一个功能非常强大的跨平台C编译器,它对C 语言提供了很多扩展,这些扩展对优化、目标代码布局、更安全的检查等方面提供了很强的支持。本文把支持GNU 扩展的C 语言称为GNU C。 Linux 内核代码使用了大量的 GNU C 扩展,以至于能够编译 Li转载 2011-12-06 11:36:15 · 3997 阅读 · 0 评论 -
在Ubuntu下编译Linux内核
声明:本文是个人参考网上有关资料,编译2.6.25内核的总结,如按本文步骤编译内核造成的责任和本文作者无关。 本文放在本人的blog上面:http://hi.baidu.com/ffbp89/ 本文还有姊妹篇《老笔记本编译2.6.20内核指导》 如果有修改,也在blog上。 欢迎转载本文,但是请不要取消本声明。 写这篇东西主要是教学目的,学生可以结合编译内核复习shell的有关转载 2011-12-05 15:32:34 · 1852 阅读 · 0 评论 -
Makefile详解——从入门到精通
转自ChinaUnix,作者gunguymadman,陈皓。链接地址:http://www.chinaunix.net/jh/23/408225.html。写的相当不错很详细,只是有点多,当作一个参考手册非常不错,所以转过来,顺便整理一下。概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉转载 2011-12-07 14:39:07 · 7290 阅读 · 1 评论 -
Linux内核学习之链表
文章参照任桥位Linux内核修炼之道3.6节编写。在Linux内核中大量地方使用了链表这个数据结构。相信科班出身的学生或者自己学习过数据结构的同学都不陌生,不错,他就是最简单的线性结构——链表。不过,在内核当中,一般采用的都是循环双联表的数据结构。因为源码有三百多行我就不贴在这里,有兴趣的去下载一下:http://download.csdn.net/detail/huiguixian/3889原创 2011-12-07 09:10:36 · 1418 阅读 · 0 评论 -
内核学习第一步:查看源码Vim+Cscope
本文参照Linux内核修炼之道编写,作者为任桥伟。Vim就不用多说了,大家都在用。Cscope看软件名字就知道C+scope,本身设计出来就是为了浏览c的代码的。通过Cscope可以知道诸如某个函数的定义、那些函数调用了它、它调用了那些函数等等。是在控制台学习Linux源码不可缺少的有力工具。你可以通过阅读Vim中文帮助手册来了解:help if_cscop.txt。1. 安装C原创 2011-12-06 10:09:31 · 4273 阅读 · 0 评论 -
Linux内核学习之系统调用
文章参考Linux内核修炼之道。1. 系统调用概念大家都知道操作系统的作用是管理计算机的软硬件资源,但是操作系统要向用户提供各种各样的服务,而用户应用程序访问这些服务的方式就是通过系统调用。但是一般来说,我们都是通过操作系统封装好的API(应用编程接口)来间接使用系统调用的。比如在Windows编程中,你可以调用WinAPI,他以C库的形式给出。比如在Linux当中,我们调用的read函数原创 2011-12-13 15:46:41 · 1666 阅读 · 0 评论 -
linux进程调度方法(SCHED_OTHER,SCHED_FIFO,SCHED_RR)
linux内核的三种调度方法:1,SCHED_OTHER 分时调度策略,2,SCHED_FIFO实时调度策略,先到先服务3,SCHED_RR实时调度策略,时间片轮转 实时进程将得到优先调用,实时进程根据实时优先级决定调度权值,分时进程则通过nice和counter值决定权值,nice越小,counter越大,被调度的概率越大,也就是曾经使用了cpu最少的进程将会得到优先调转载 2013-06-04 14:05:12 · 1344 阅读 · 0 评论 -
打造你自己的vim--如何配置vim
你是不是已经烦透了每次打开vim的时候,首先set nu把行号掉出来,然后设置缩进,设置高亮等等。有没有想过打造一下你自己的vim,让你每次打开你的vim的时候都可以是你所想的配置?其实很简单,只需要几步而已。在讲之前首先讲一下vim配置文件的位置和基本的结果。如果你只是想简单的配置一下自己的vim,根本无需了解vim的脚本,只需按照如下操作即可,否则你要百度一下vim的脚本了。首先在你安装好原创 2011-05-04 15:15:00 · 23739 阅读 · 6 评论 -
Linux下mysql初步探索
安装可以采用rpm包的方式从官网上下载,我是比较懒的才用最懒的安装方式,就不rpm包了,yum install mysql-server就搞定了。然后启动mysql,命令service mysqld start。查看运行状态,/etc/rc.d/init.d/mysqld status,mysql is running...说明你的数据库服务已经开启了。先暂时把服务器关闭,我们做点有必要的事情,s原创 2011-06-08 11:48:00 · 1019 阅读 · 0 评论 -
Linux命令行参数执行详解
<br /><br />转自: http://www.groad.net/bbs/simple/?t2609.html<br /> <br />1. Linux 如何从命令行执行程序<br />从 shell 中运行程序时,系统会为要执行的程序在内存中创建一个区域。分配给程序的内存区域可以位于物理内存的任何位置。为了使这一过程简化,每个程序都被分配相同的虚拟内存地址。虚拟内存地址由操作系统映射到物理内存地址。<br /><br />在 Linux 中,分配给程序的虚拟地址从地址 0x80480000转载 2011-04-15 12:44:00 · 5132 阅读 · 0 评论 -
viminfo详解
深入详解viminfo文件和set viminfo命令转载 2011-05-26 15:25:00 · 14340 阅读 · 0 评论 -
Ubuntu下安装VMware Tools
如果您用过VMware这款虚拟机软件却没有听说过VMware Tools,您就太孤陋寡闻了。您的虚拟机跟主机通信如果还是使用文件共享或者qq等通讯软件的话就太落后了,这款软件可以让你的虚拟机和主机进行拖动通信,直接拖动文件即可。安装步骤:1. 菜单 VM->install VMware Tools ...点击之后两种结果一种是你的VMware的虚拟光驱直接加载VMware Tools安装包的软件,或者在下方出现一个提示,问你是否要装VMware Tools的软件,对于后者点击是就可以。2. 打开终端,我以我原创 2011-01-25 13:39:00 · 2387 阅读 · 0 评论 -
gcc编译c++程序
原来一直以为gcc是c的linux下的编译器,g++是c++的linux下的编译器,今天偶尔看到一个说明文档,大体内容是gcc已经不单纯的可以编译C语言,它支持C, C++, Objective-C, Fortran, Java, Ada的编译,如果不指名编译语言,默认由后缀名决定。感觉好神奇,就亲自想用gcc来编译一个c++的helloworld。步骤如下:1.用vim直接打开hello.cpp,编译一个简单的hello world,用:wq命令保存,退出。2.直接最简单的默认命令gcc hello.c原创 2011-01-25 12:40:00 · 24686 阅读 · 0 评论 -
vim常用的缩进等命令
<br /><br />1. set nu 显示行号<br />2. set cin 按C语言格式缩进<br />3. set ts=4 设置Tab长度为4格<br />4. set sw=4 设置自动缩进长度为4格<br />5. set showmatch 显示括号匹配<br />6. set matchtime=1 括号匹配显示时间为1(最短的,似乎1,2,3,4,5可选)原创 2011-01-25 22:05:00 · 1240 阅读 · 0 评论 -
Fedora下安装Chrome出现lsb >= 3.2 is needed by google-chrome
今天想在Fedora下安装Google-Chrome,下载之后是rpm包,然后百度一下rpm包安装的命令(不许砸砖头,哥是小菜)。命令很简单,最基本的rpm -i ***, 一般使用rpm -ivh ***,v用来显示安装详细信息h用'#'来显示安装进度。不过很不幸出现了如下错误warning: google-chrome-stable_current_i386.rpm: Header V3 DSA signature: NOKEY, key ID 7fac5991error: Failed depende原创 2011-02-26 17:33:00 · 4383 阅读 · 0 评论 -
section does not end with %%end 错误
<br />今天在安装fedora 14的中间出现了section does not end with %%end的错误,最后百度出来原因原来是在安装系统的时候采用的是VMware默认的设置的直接选择installer disc image file(iso):然后选择的是那个镜像文件,应该选择I will install the operation system later.<br /> <br />解决方法:<br />把原来所建立的一个系统删除,然后重新建立的时候选择 i will install t原创 2011-02-26 13:05:00 · 2068 阅读 · 0 评论 -
Linux与Window文件乱码问题
<br />在windows中建立的文本文件,拖动到Linux下会乱码。(不考虑换行问题)<br />原因很简单,使用windows自带的记事本默认的编码方式为ANSI,ANSI是使用两个字节来编码的,在中文简体操作系统中ANSI对应的编码方式为GBK,而Linux系统会自动识别Unicode的字符,但是不会识别GBK,因而使从windows到Linux的文件出现乱码。<br /> <br />解决方法:<br />使用iconv命令来转换文件的格式。如, iconv -f GBK -t UTF-8 tes原创 2011-02-26 18:33:00 · 5794 阅读 · 2 评论 -
vim打开文档和多文档编辑
一、vim打开文档:1. vim 文档名 普通方式打开文档 2. vim +n 文档名 打开文档后,定位第n行3. vim ,进入vim界面之后使用命令 :e 文档名 打开文档,此方式可以在编辑一个文档的同时打开另外一个文档二、多文档编辑:1. vim 文档1名 文档2名 ...2. vim ,进入vim后使用:e 文档名 打开文档3.多文档编辑的命令如下:n 编辑下一个文档。:2n 编辑下两个文档。:N 编辑上一个文档。注意,该原创 2011-03-08 13:55:00 · 43157 阅读 · 3 评论 -
在windows下使用vim和gcc开发c程序
相信只要接触过linux的人肯定用过vim这个功能超强大的文本编辑器,只要在linux写过C语言的绝对使用了gcc的,我接触linux没多长时间,但是觉得这两个东西真的是相当的好,如果写一个简单的C语言程序每次都要打开虚拟机是不是很麻烦呢?可以在windows下使用vim和gcc来开发C语言程序吗?还真的可以。1. 准备vim这个编辑器。在windows下有一个很优秀的gVim文本编辑器,功能与linux的一样,而且更强大。百度一个下载下来然后安装,打开是不是感觉很熟悉,操作一下,与linux的一摸一样。但原创 2011-03-08 15:17:00 · 13181 阅读 · 3 评论 -
Linux命令行连接网络
<br />弄了半天还是在命令行使用ifconfig连接上网络,只能由ifup暂时代替。<br />我使用ifconfig eth0 down将第一个网卡down掉之后,在右上角上的连接图标多了一个叉叉,也就是说网络被禁用了,但是当我用ifconfig eth0 ip netmask broadcast命令配置好网络ip之后仍然不行,用ifconfig eth0 up之后还是不行,没有办法只能由ifup自动获取ip。<br />希望过段时间把这个补上,简单的网络配置还是需要的。<br />ps.我想通过if原创 2011-03-18 15:49:00 · 8625 阅读 · 0 评论 -
Linux配置连接网络
<br />本文以Fedora14为例,采用固定IP的方式,参照鸟哥的Linux私房菜来连接网络的,以下内容很多摘自鸟哥的私房菜。<br /> <br />首先介绍与Linux网络设定相关的一些文件,这些文件都很重要,因为在linux下修改IP只要修改一个文件即可,修改主机名也只需要需要修改一个文件而已,所以你必须把这些文件名记起来。<br />(1). /etc/sysconfig/network:<br /> 这个文件的主要功能在于主机名称(HOSTNAME)的修改,Network的启动与否。在原创 2011-03-19 22:17:00 · 10974 阅读 · 0 评论 -
Linux命令内容分页显示
<br />我们在使用linux命令的时候,经常遇到一屏显示不够,这样前面的内容在终端下就看不到了。那如何使命令打印出的内容分页显示呢?利用管道技术将两个命令联系到一起就可以轻松的实现。<br /> <br />管道<br />管道简单理解就是,使用管道意味着第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。<br /> <br />这样在ls命令的时候如果现实的内容原创 2011-03-25 10:44:00 · 66000 阅读 · 2 评论 -
通配符和正则表达式的区别
<br />在看鸟哥的Linux私房菜的时候看到十二章一直强调通配符和正则表达式的区别,在我的理解中,两者貌似是一样的都是用来匹配的。Google之网上给出的答案是:<br />在文本过滤工具里,都是用正则表达式,比如像awk,sed,等,是针对文件的内容的<br />而通配符多用在文件名上,比如查找find,ls,cp,等等<br /> <br />下表是鸟哥给的Linux下的通配符<br /> <br />符號內容*萬用字元,代表 0 個或多個字元(或數字)?萬用字元,代表『一定有』一個字母#註解,這個原创 2011-03-28 23:00:00 · 24404 阅读 · 3 评论 -
认识(大端--小端)端模式
端模式(Endian)的这个词出自Jonathan Swift书写的《格列佛游记》。这本书根据将鸡蛋敲开的方法不同将所有的人分为两类,从圆头开始将鸡蛋敲开的人被归为Big Endian,从尖头开始将鸡蛋敲开的人被归为Littile Endian。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开。在计算机业Big Endian和Little Endian也几乎引起一场战争。在计算机业界,Endian表示数据在存储器中的存放顺序。下文举例说明在计算机转载 2011-05-16 20:13:00 · 1705 阅读 · 2 评论 -
linux内存管理初步探索
linux的内存分配和管理,linux的5个数据段:栈段、堆段、BSS段、数据段、代码段的分布。原创 2011-05-23 17:11:00 · 1947 阅读 · 3 评论 -
gcc命令详解
GCC编译程序时:预处理、编译、汇编、链接各个步骤。GCC添加头文件搜索目录,加入库文件搜索目录,添加静态库。原创 2011-05-26 12:05:00 · 1351 阅读 · 0 评论 -
gcc不能编译gdbm的程序
gcc无法编译gdbm程序报错:undefined reference to `dbm_open'原创 2011-05-26 11:46:00 · 2289 阅读 · 0 评论 -
ioctl方法详解
设备控制接口(ioctl 函数)回想一下我们在字符设备驱动中介绍的struct file_operations 结构,这里我们将介绍一个新的方法:int (*ioctl) (struct inode *, struct file *, unsigned int, unsigned long);这是驱动程序设备控制接口函数(ioctl函转载 2014-04-24 14:13:40 · 15674 阅读 · 0 评论