随笔分类 - linux
linux学习与应用
linux脚本编写基础之珍藏
摘要:
Linux脚本编写语法基础介绍:
1 开头
程序必须以下面的行开始(必须方在文件的第一行):
#!/bin/sh
符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
当编写脚本完成时,如果要执行该脚本,还必须使其可执行。
要使编写脚本可执行:
编译 chmod +x filename 这样才能用./filename 来运行
2 注释
在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。
如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。
3 变量
在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。要赋值给一个变量,您可以这样写:
#!/
阅读全文

linux makefile文件心得笔记
摘要:
#sample Makefile
edit : main.o kbd.o command.o display.o \ #第一次:作为目标“edit”的依赖文件列表出现
insert.o search.o files.o utils.o
cc -o edit main.o kbd.o command.o display.o \#第二次:规则命令行中作为“cc”的参数列表
insert.o search.o files.o utils.o
main.o : main.c defs.h
cc -c main.c
kbd.o : kbd.c defs.h command.h
cc -c kbd.c
command.o : command.c defs.h command.h
cc -c command.c
display.o : display.c defs.h
阅读全文

Linux Makefile由浅入深剖析
摘要:
经过长时间学习linux Makefile,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西。
假设我们有一个程序由5个文件组成,源代码如下:
/*main.c*/
#include "mytool1.h"
#include "mytool2.h"
int main()
{
mytool1_print("hello mytool1!");
mytool2_print("hello mytool2!");
return 0;
}
/*mytool1.c*/
#include "mytool1.h"
#include
void mytool1_print(char *print_str)
阅读全文

linux下杀死进程全权讲解
摘要:
t ~]# pgrep -l gaim 5031 gaim
5031 gaim
[root@localhost ~]# kill -9 5031
特殊用法:
kill -STOP [pid]
阅读全文

Linux程序前台后台切换
摘要:
Linux程序前台后台切换1、在Linux终端运行命令的时候,在命令末尾加上 & 符号,就可以让程序在后台运行Ubuntu$"root@Ubuntu$ ./tcpserv01 &
2、如果程序正在前台运行,可以使用 Ctrl+z 选项把程序暂停,然后用 bg %[number] 命令把这个程序放到后台运行Ubuntu"cat@Ubuntu:~/unp/unpv13e/tcpcliserv$ ./tcpserv01 ^Z [1]+ Stopped ./tcpserv01 cat@Ubuntu:~/unp/unpv13e/tcpcliserv$ bg %1 [1]+ ./tcpserv01 & cat@Ubuntu:~/unp/unpv13e/tcpcliserv$
3、对于所有运行的程序,我们可以用jobs –l 指令查看cat@Ubuntu:~/unp/unpv13e/tcpclis
阅读全文

linux暂停和恢复进程
摘要:
kill -STOP 1234 将该进程暂停。
如果要让它恢复到后台,用kill -CONT 1234 (很多在前台运行的程序这样是不行的)
如果要恢复到前台,请在当时运行该进程的那个终端用jobs命令查询暂停的进程。
然后用 fg 〔job号〕把进程恢复到前台。
如果jobs只查询到一个进程,只用 fg 即可。
例:root@dWorks:~# bc -q
[1]+ Stopped bc -q
root@dWorks:~# bc -q
[2]+ Stopped bc -q
root@dWorks:~# jobs
[1]- Stopped bc -q
[2]+ Stopped bc -q
root@dWorks:~# fg 2
bc -q
1+1
2
A,Shell支持作用控制,有以下命令:
阅读全文

Linux定时器的使用
摘要:
使用定时器的目的无非是为了周期性的执行某一任务,或者是到了一个指定时间去执行某一个任务。要达到这一目的,一般有两个常见的比较有效的方法。一个是用linux内部的三个定时器,另一个是用sleep, usleep函数让进程睡眠一段时间,使用alarm定时发出一个信号,还有那就是用gettimeofday, difftime等自己来计算时间间隔,然后时间到了就执行某一任务,但是这种方法效率低,所以不常用。
阅读全文

Fedora10 NAT方式以固定IP共享主机上网
摘要:
在终端执行
vim /etc/sysconfig/networking/devices/ifcfg-eth0或/etc/sysconfig/network-scripts/ifcfg-eth0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0(根据情况自己设定)
HWADDR=00:0c:29:4a:e8:48(通过右键虚拟网卡查看MAC值)
ONBOOT=yes(表示当计算机启动激活网卡设备)
BOOTPROTO=none
USERCTL=no
PEERDNS=no
IPV6INIT=no
NM_CONTROLLED=yes
TYPE=Ethernet
NETMASK=255.255.255.0
IPADDR=192.168.221.129
阅读全文

Ubuntu下更改eth0网卡名称为eth1
摘要:
这个方法用于解决Ubuntu下更换网卡后,新网卡变更为eth1,并且源网卡的名称eth0,无法给新网卡用的情况。也可以用于为网卡更名。
网卡MAC地址改变之后,在Linux中找到网卡,新的网卡会被识别为eth1或者更为靠后的网卡写入到/etc/udev/rules.d/70-persistent-net.rules这个文件中,修改/etc/udev/rules.d/70-persistent-net.rules这个文件,将eth0的MAC地址修改为改变后的地址就可以。
阅读全文

几个较快的主流Ubuntu 9.10[karmic] 更新源及其配置和注意问题
摘要:
Ubuntu 安装好后默认的是官方的源,这当然是一个有效的源:但其缺点就是一个字--"慢"!!所以我们应该换一个更适合我们的有效源。
源的更换是通过更新系统源列表文件sources.list 实现的:先用命令sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup 备份官方的源列表文件[以防我们新配的源不可用,当然自信的你不配分也罢O(∩_∩)O~]。cp 是copy[拷贝] 的缩写,这条命令的作用即把/etc/apt/ 目录下的sources.list 文件拷贝一个备份到当前目录,备份的文件名为sources.list_backup。
阅读全文

ubuntu软件安装与卸載
摘要:
Ubuntu 安装好后默认的是官方的源,这当然是一个有效的源:但其缺点就是一个字--"慢"!!所以我们应该换一个更适合我们的有效源。
源的更换是通过更新系统源列表文件sources.list 实现的:先用命令sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup 备份官方的源列表文件[以防我们新配的源不可用,当然自信的你不配分也罢O(∩_∩)O~]。cp 是copy[拷贝] 的缩写,这条命令的作用即把/etc/apt/ 目录下的sources.list 文件拷贝一个备份到当前目录,备份的文件名为sources.list_backup。
阅读全文

虚拟机使用NAT方式共享主机网络连接上网
摘要:
首先设置虚拟机中fedora或ubuntu的网卡属性为自动获取IP和DHCP,然后修改VMware的网络连接为NAT模式,可看到fedora或ubuntu中网卡重新连接,如没有反应,可重复,或是在终端中输入
ifconfig eth* down(*为当前有效网卡号)
然后再
ifconfig eth* up(*为当前有效网卡号)
可在终端中输入ifconfig,查看到当前网址已和主机中的网络连接VMNET8处于同一网段,即可互ping,然后就可以共享主机网络连接上网了
阅读全文

Ubuntu下安装fcitx中文输入法
摘要:
Ubuntu系统本身默认的中文输入法是ibus(Intelligent Input Bus),不过如果是习惯了windows下的QQ输入法,搜狗输入法之类的,基本上都会感到ibus输入法比较难用。这里就介绍一下在ubuntu下和QQ输入法差不多的好用的中文输入法,那个就是fcitx小企鹅输入法。
Fcitx(Free Chinese Input Toy for X)小企鹅输入法,是一个以GPL方式发布的XIM简体中文输入法(原来的G五笔),提供区位和全/简/双拼,支持基于码表输入模块的输入法(五笔、五笔拼音、二笔、仓颉、晚风、冰蟾全息等)。
阅读全文

ubuntu gedit乱码问题
摘要:
好多情况下gedit 在打开windows分区下的文本文件,和下载下来的文本文件时会出乱码的情况,这种情况一般都是由于字符编码的源因,因为linux下缺省情况下是采用 UTF-8的,所以我们最好把GBK,GB2312,之类 的字符编码加上去。步骤是,在终端输入gconf-editor调出gconf-editor(如果没有装,则先安装gconf-editor)
在apps-gedit- 2-preferences->encodings在右边的auto-detected中双击会弹出一个对话框,在那里加入GBK,GB2312,GB18030编码就可以了。
注意,可能还是会不行,这时只要把GBK置顶就可以了
阅读全文

Linux 下的超级终端minicom的使用手册( 并解决minicom无法输入命令问题)
摘要:
# lsmod | grep usbserial (如果直接使用串口线,而没有用到USB转串口设备,此步可以跳过)
如果有usbserial,说明系统支持USB转串口。如我的u口转串口芯片是采用PL2303芯片,可以看到已经被连接到ttyUSB0上。
1. USB 串口无法识别的问题:
我的笔记本没有RS232接口,只好用USB转串口,再通过开发板配套的一根交叉串口线连接到开发板上。但虚拟机启动时,出现宿主机无法连接USB设备的问题
阅读全文

Ubuntu开启root用户及其它登录问题的解决
摘要:
Ubuntu安装后,root用户默认是被锁定了的,不允许登录,也不允许“su”到 root。有人说这是个不好的实践,特别是对于服务器来说。我觉得对于桌面用户来说,这样安全性更高一些,是应该的;但对于服务器可以设置成“允许 su 到root,但不允许root用户直接登录”。而我为了开发时的方便,则在桌面和服务器上都采用这种方式。
阅读全文

secureCRT,vim中输入中文
摘要:
1、secureCRT
session中的设置
1)Session Option→选字体(新宋体,or fix-sys,or others),字符集选Chinese_GB2312
2)vim /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
3)vi ~/.bash_profile
export LANG=zh_CN.UTF-8
阅读全文

用FlashFXP上传文件到SSH服务器,附FlashFXP显示中文乱码的解决方法
摘要:
用SSH Secure Shell能上传文件,又能输入命令,而且上传文件的时候不容易无故断开连接。但是它缺少续传的功能,不太适合上传比较大的文件;而且它在与linux系统SSH登陆时不方便支持中文,所以这里我向大家推荐FlashFXP来实现与SSH服务器文件互传。
阅读全文

Linux下QT4.7.1静态编译过程
摘要:
一、静态编译QT库
发布QT程序时,为了使没有QT依赖库的环境中也能运行QT程序,这就需要静态编译你的QT程序。要达到这个目的,首先必须静态编译你的QT库文件,其过程如下:
我的系统:Ubuntu10.10
第一步:下载源码包
qt-everywhere-opensource-src-4.7.1.tar.gz(下载地址)。
第二步:解压缩
tar zxvf qt-everywhere-opensource-src-4.7.1.tar.gz
第三步:配置
1.进入解压目录:cd qt-everywhere-opensource-src-4.7.1,
2.配置编译选项: ./configure -release -static -nomake examples -nomake demos -no-qt3support -no-script -no-scripttool
阅读全文

arm嵌入式linux qt入门问答,很经典!!
摘要:
很多新手刚开始学习ARM的时候都会遇到下面类似的问题,由于很多基本原理都不会,所以很容易被表面问题迷惑,相信看完下述问答的新手一定会对ARM有一个非常清晰的印象。
阅读全文
