配色: 字号:
Ubuntu linux下的命令大全
2016-09-19 | 阅:  转:  |  分享 
  
Ubuntulinux下的命令大全

前言

下面的命令大都需要在控制台/终端/shell下输入。

控制台,终端,和shell意味着同样一件事-一个命令行界面,他可以用来控制系统。

打开一个控制台:

应用程序-->附件-->终端

任何一个使用''sudo''作为前缀的命令都需要拥有管理员(或root)访问权限。所以你会被提示输入你自己的密码。



安装升级

查看软件xxx安装内容

dpkg-Lxxx

查找软件库中的软件

apt-cachesearch正则表达式



aptitudesearch软件包

显示系统安装包的统计信息

apt-cachestats

显示系统全部可用包的名称

apt-cachepkgnames

显示包的信息

apt-cacheshowk3b

查找文件属于哪个包

dpkg-Sfilename

apt-filesearchfilename

查看已经安装了哪些包

dpkg-l

查询软件xxx依赖哪些包

apt-cachedependsxxx

查询软件xxx被哪些包依赖

apt-cacherdependsxxx

增加一个光盘源

sudoapt-cdromadd

系统更新

sudoapt-getupdate(这一步更新包列表)

sudoapt-getdist-upgrade(这一步安装所有可用更新)

或者

sudoapt-getupgrade(这一步安装应用程序更新,不安装新内核等)

清除所有已删除包的残馀配置文件

dpkg-l|grep^rc|awk''{print$2}''|sudoxargsdpkg-P

如果报如下错误,证明你的系统中没有残留配置文件了,无须担心。

dpkg:--purgeneedsatleastonepackagenameargument

Typedpkg--helpforhelpaboutinstallinganddeinstallingpackages[];

Use`dselect''or`aptitude''foruser-friendlypackagemanagement;

Typedpkg-Dhelpforalistofdpkgdebugflagvalues;

Typedpkg--force-helpforalistofforcingoptions;

Typedpkg-deb--helpforhelpaboutmanipulating.debfiles;

Typedpkg--licenseforcopyrightlicenseandlackofwarranty(GNUGPL)[].

Optionsmarked[]producealotofoutput-pipeitthrough`less''or`more''!



编译时缺少h文件的自动处理

sudoauto-aptrun./configure

查看安装软件时下载包的临时存放目录

ls/var/cache/apt/archives

备份当前系统安装的所有包的列表

dpkg--get-selections|grep-vdeinstall>~/somefile

从上面备份的安装包的列表文件恢复所有包

dpkg--set-selections<~/somefile

sudodselect

清理旧版本的软件缓存

sudoapt-getautoclean

清理所有软件缓存

sudoapt-getclean

删除系统不再使用的孤立软件

sudoapt-getautoremove

查看包在服务器上面的地址

apt-get-qq--print-urisinstallssh|cut-d\''-f2



彻底删除Gnome

sudoapt-get--purgeremoveliborbit2

彻底删除KDE

sudoapt-get--purgeremovelibqt3-mtlibqtcore4

一键安装LAMP服务

sudotaskselinstalllamp-server

删除旧内核

sudoaptitudepurge~ilinux-image-.‘uname?r‘

导入ppa源的key值

#W:GPG签名验证错误:http://ppa.launchpad.netjauntyRelease:由于没有公钥,下列签名无法进行验证:NO_PUBKEY5126890CDCC7AFE0

sudoapt-keyadv--recv-keys--keyserverkeyserver.ubuntu.com5126890CDCC7AFE0#5126890CDCC7AFE0替换为你需要导入的Key值

增加一个ppa源

sudoadd-apt-repositoryppa:user/ppa-name

#使用ppa的地址替换ppa:user/ppa-name

系统升级

1.这里指的是版本间的升级,例如9.04=>10.04。

2.使用该升级方式通常需要使用backports源。

sudoapt-getupdate

sudoapt-getinstallupdate-manager-core

sudodo-release-upgrade

系统

查看内核

uname-a

查看系统是32位还是64位

#查看long的位数,返回32或64

getconfLONG_BIT

#查看文件信息,包含32-bit就是32位,包含64-bit就是64位

file/sbin/init

查看Ubuntu版本

cat/etc/issue

或cat/etc/lsb-release

或lsb_release-dsc

查看内核加载的模块

lsmod

查看PCI设备

lspci

查看USB设备

lsusb



#加参数-v可以显示USB设备的描述表(descriptors)

lsusb-v

查看网卡状态

sudoapt-getinstallethtool

sudoethtooleth0

激活网卡的Wake-on-LAN

sudoapt-getinstallwakeonlan

或sudoethtool-seth0wolg

查看CPU信息

cat/proc/cpuinfo

显示当前硬件信息

sudolshw

查看内存型号

sudodmidecode-tmemory

获取CPU序列号或者主板序列号

#CPUID

sudodmidecode-t4|grepID

#SerialNumber

sudodmidecode|grepSerial

#CPU

sudodmidecode-t4

#BIOS

sudodmidecode-t0

#主板:

sudodmidecode-t2

#OEM:

sudodmidecode-t11

显示当前内存大小

free-m|grep"Mem"|awk''{print$2}''

查看硬盘温度

sudoapt-getinstallhddtemp

sudohddtemp/dev/sda

显示系统运行时间

uptime

查看系统限制

ulimit-a

查看内核限制

ipcs-l

查看当前屏幕分辨率

xrandr

硬盘

查看硬盘的分区

sudofdisk-l

硬盘分区

#危险!小心操作。

sudofdisk/dev/sda

硬盘格式化

#危险!将第一个分区格式化为ext3分区,mkfs.reiserfsmkfs.xfsmkfs.vfat

sudomkfs.ext3/dev/sda1

硬盘检查

#危险!检查第一个分区,请不要检查已经挂载的分区,否则容易丢失和损坏数据

sudofsck/dev/sda1

分区挂载

sudomount-t文件系统类型设备路经访问路经

#常用文件类型如下:iso9660光驱文件系统,vfatfat/fat32分区,ntfsntfs分区,smbfswindows网络共享目录,reiserfs、ext3、xfsLinux分区

#如果中文名无法显示尝试在最後增加-onls=utf8或-oiocharset=utf8

#如果需要挂载後,普通用户也可以使用,在-o的参数後面增加,umask=022如:-onls=utf8,umask=022

分区卸载

sudoumount目录名或设备名

只读挂载ntfs分区

sudomount-tntfs-onls=utf8,umask=0/dev/sdb1/mnt/c

可写挂载ntfs分区

sudomount-tntfs-3g-olocale=zh_CN.utf8,umask=0/dev/sdb1/mnt/c

挂载fat32分区

sudomount-tvfat-oiocharset=utf8,umask=0/dev/sda1/mnt/c

挂载共享文件

sudomount-tsmbfs-ousername=xxx,password=xxx,iocharset=utf8//192.168.1.1/share/mnt/share

挂载ISO文件

sudomount-tiso9660-oloop,utf8xxx.iso/mnt/iso

查看IDE硬盘信息

sudohdparm-i/dev/sda

查看软raid阵列信息

cat/proc/mdstat

参看硬raid阵列信息

dmesg|grep-iraid

cat/proc/scsi/scsi

查看SATA硬盘信息

sudohdparm-I/dev/sda



sudoapt-getinstallblktool

sudoblktool/dev/sdaid

查看硬盘剩余空间

df

用法:df[选项]...[文件]...显示每个<文件>所在的文件系统的信息,默认是显示所有文件系统。

长选项必须用的参数在使用短选项时也是必需的。

-a,--all包括大小为0个块的文件系统

-B,--block-size=大小块以指定<大小>的字节为单位

-h,--human-readable以容易理解的格式印出文件系统大小(例如1K234M2G)

-H,--si类似-h,但取1000的次方而不是1024

-i,--inodes显示inode信息而非块使用量

-k即--block-size=1K

-l,--local只显示本机的文件系统

--no-sync取得使用量数据前不进行同步动作(默认)

-P,--portability使用POSIX兼容的输出格式

--sync取得使用量数据前先进行同步动作

-t,--type=类型只印出指定文件系统为指定<类型>的信息

-T,--print-type印出文件系统类型

-x,--exclude-type=类型只印出文件系统不是指定<类型>信息

-v(忽略)

--help显示此帮助信息并离开

--version显示版本信息并离开

查看目录占用空间

du-hs目录名

优盘没法卸载

sync

fuser-km/media/usbdisk

使用文件来增加交换空间

#创建一个512M的交换文件/swapfile

sudoddif=/dev/zeroof=/swapfilebs=1Mcount=512

sudomkswap/swapfile

sudoswapon/swapfile

#sudovim/etc/fstab#加到fstab文件中让系统引导时自动启动

/swapfileswapswapdefaults00

查看硬盘当前读写情况

#首先安装sysstat包

sudoapt-getinstallsysstat

#每2秒刷新一次

sudoiostat-x2

进程

查看当前的内存使用情况

free

usage:free[-b|-k|-m|-g][-l][-o][-t][-sdelay][-ccount][-V]

-b,-k,-m,-gshowoutputinbytes,KB,MB,orGB

-lshowdetailedlowandhighmemorystatistics

-ouseoldformat(no-/+buffers/cacheline)

-tdisplaytotalforRAM+swap

-supdateevery[delay]seconds

-cupdate[count]times

-Vdisplayversioninformationandexit

连续监视内存使用情况

watch-dfree

#使用Ctrl+c退出

动态显示进程执行情况

top

top指令运行时输入H或?打开帮助窗口,输入Q退出指令。

查看当前有哪些进程

ps-AFL

查看进程的启动时间

ps-A-opid,stime,etime,args

查看目前登入用户运行的程序

w

查看当前用户程序实际内存占用,并排序

ps-u$USER-opid,rss,cmd--sort-rss

统计程序的内存耗用

ps-eofname,rss|awk''{arr[$1]+=$2}END{for(iinarr){printi,arr[i]}}''|sort-k2-nr

按内存从大到小排列进程

ps-eo"%C:%p:%z:%a"|sort-k5-nr

按cpu利用率从大到小排列进程

ps-eo"%C:%p:%z:%a"|sort-nr

psaux--sort-pcpu|head-n20

查看当前进程树

pstree

中止一个进程

kill进程号(就是ps-A中的第一列的数字)

或者killall进程名

强制中止一个进程(在上面进程中止不成功的时候使用)

kill-9进程号

或者killall-9进程名

图形方式中止一个程序

xkill出现骷髅标志的鼠标,点击需要中止的程序即可



查看进程打开的文件

lsof-p进程的pid

显示开启文件abc.txt的进程

lsofabc.txt

显示22端口现在运行什么程序

lsof-i:22

显示nsd进程现在打开的文件

lsof-cnsd

在後台运行程序,退出登录後,并不结束程序

nohup程序&

#查看中间运行情况tailnohup

在后台运行交互式程序,退出登录后,并不结束程序

sudoapt-getinstallscreen

screenvima.txt

#直接退出后使用

screen-ls#1656.pts-0.ubuntu(Detached)

screen-r1656#恢复

#热键,同时按下Ctrl和a键结束后,再按下功能键

C-a?#显示所有键绑定信息

C-aw#显示所有窗口列表

C-aC-a#切换到之前显示的窗口

C-ac#创建一个新的运行shell的窗口并切换到该窗口

C-an#切换到下一个窗口

C-ap#切换到前一个窗口(与C-an相对)

C-a0..9#切换到窗口0..9

C-aa#发送C-a到当前窗口

C-ad#暂时断开screen会话

C-ak#杀掉当前窗口

详细显示程序的运行信息

strace-f-F-ooutfile

增加系统最大打开文件个数

#ulimit-SHn

sudovim/etc/security/limits.conf

文件尾追加

hardnofile4096

softnofile4096

sudovim/etc/pam.d/su

将pam_limits.so这一行注释去掉

重起系统

清除僵尸进程

ps-eal|awk''{if($2=="Z"){print$4}}''|xargssudokill-9

将大于120M内存的php-cgi都杀掉

ps-eopid,fname,rss|gwww.shanxiwang.netrepphp-cgi|grep-vgrep|awk''{if($3>=120000)print$1}''|xargssudokill-9

Linux系统中如何限制用户进程CPU占用率

renice+10`psaux|awk''{if($3>0.8&&id-u$1>500)print$2}''`

#或直接编辑/etc/security/limits.conf文件。

ADSL

配置ADSL

sudopppoeconf

ADSL手工拨号

sudopondsl-provider

激活ADSL

sudo/etc/ppp/pppoe_on_boot

断开ADSL

sudopoff

查看拨号日志

sudoplog

如何设置动态域名

#首先去http://www.3322.org申请一个动态域名

#然後修改/etc/ppp/ip-up增加拨号时更新域名指令

sudovim/etc/ppp/ip-up

#在最後增加如下行

w3m-no-cookie-dump''http://username:password@members.3322.org/dyndns/update?system=dyndns&hostname=yourdns.3322.org''

网络

根据IP查网卡地址

arpingIP地址

根据IP查电脑名

nmblookup-AIP地址

查看当前IP地址

ifconfigeth0|awk''/inet/{split($2,x,":");printx[2]}''

查看当前外网的IP地址

w3m-no-cookie-dumpwww.ip138.com/ip2city.asp|grep-o''[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}''

w3m-no-cookie-dumpip.loveroot.com|grep-o''[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}''

curlifconfig.me

查看当前监听80端口的程序

lsof-i:80

查看当前网卡的物理地址

ifconfigeth0|head-1|awk''{print$5}''

同一个网卡增加第二个IP地址

#在网卡eth0上增加一个1.2.3.4的IP:

sudoifconfigeth0:01.2.3.4netmask255.255.255.0

#删除增加的IP:

sudoifconfigeth0:0down

立即让网络支持nat

echo1|sudotee/proc/sys/net/ipv4/ip_forward

sudoiptables-tnat-IPOSTROUTING-jMASQUERADE

查看路由信息

netstat-rn

sudoroute-n

手工增加一条路由

sudorouteadd-net192.168.0.0netmask255.255.255.0gw172.16.0.1

手工删除一条路由

sudoroutedel-net192.168.0.0netmask255.255.255.0gw172.16.0.1

修改网卡MAC地址的方法

sudoifconfigeth0down#关闭网卡

sudoifconfigeth0hwether00:AA:BB:CC:DD:EE#然后改地址

sudoifconfigeth0up#然后启动网卡

永久改地址方法

sudogedit/etc/network/interfaces

在ifaceeth0inetstatic后面添加一行:

pre-upifconfigeth0hwether01:01:01:01:01:01

配置文件应该像如下

ifaceeth0inetstatic

pre-upifconfigeth0hwether01:01:01:01:01:01

address192.168.1.10

netmask255.255.255.0

gateway192.168.1.1

最后是logout或者reboot

统计当前IP连接的个数

netstat-na|grepESTABLISHED|awk''{print$5}''|awk-F:''{print$1}''|sort|uniq-c|sort-r-n

netstat-na|grepSYN|awk''{print$5}''|awk-F:''{print$1}''|sort|uniq-c|sort-r-n

netstat-ntu|awk''{print$5}''|cut-d:-f1|sort|uniq-c|sort-n

统计当前所有IP包的状态

netstat-nat|awk''{printawk$NF}''|sort|uniq-c|sort-n

统计当前20000个IP包中大于100个IP包的IP地址

tcpdump-tnn-c20000-ieth0|awk-F"."''{print$1"."$2"."$3"."$4}''|sort|uniq-c|sort-nr|awk''$1>100''

屏蔽IPV6

echo"blacklistipv6"|sudotee/etc/modprobe.d/blacklist-ipv6

察看当前网络连接状况以及程序

sudonetstat-atnp

查看网络连接状态

netstat-n|awk''/^tcp/{++S[$NF]}END{for(ainS)printa,S[a]}''

查看当前系统所有的监听端口

nc-zvlocalhost1-65535

查看网络的当前流量

#安装ethstatus软件

sudoapt-getinstallethstatus

#查看ADSL的速度

sudoethstatus-ippp0

#查看网卡的速度

sudoethstatus-ieth0

#或安装bwm-ng

sudoapt-getinstallbwm-ng

#查看当前网络流量

bwm-ng

查看域名的注册备案情况

whoisbaidu.cn

查看到某一个域名的路由情况

tracepathbaidu.cn

重新从服务器获得IP地址

sudodhclient

从当前页面开始镜像整个网站到本地

wget-r-p-np-khttp://www.21cn.com

·-r:在本机建立服务器端目录结构;

·-p:下载显示HTML文件的所有图片;

·-np:只下载目标站点指定目录及其子目录的内容;

·-k:转换非相对链接为相对链接。

如何多线程下载

sudoapt-getinstallaxel

axel-n5http://xxx.xxx.xxx.xxx/xxx.zip

或者

lftp-c"pget-n5http://xxx.xxx.xxx.xxx/xxx.zip“

如何查看HTTP头

w3m-dump_headhttp://www.example.com

或curl--headhttp://www.example.com

快速使用http方式共享目录

#进入需要共享的目录后运行:

python-mSimpleHTTPServer

#其它电脑使用http://ip:8000来访问

#自定义端口为8080:

python-mSimpleHTTPServer8080

SSH远程端口转发

ssh-v-CNgD7070username@sshhostipaddress

监控网络所有的tcp数据

sudoapt-getinstallsnort#安装snort入侵检测程序

sudosnort-vde

监控TCP/UDP连接的流量

sudoapt-getinstalliftop

sudoiftop

#或

sudoapt-getinstalliptraf

sudoiptraf

扫描某个IP的端口

nc-v-w1192.168.1.1-z1-1000

iptables

防止外网用内网IP欺骗

#eth0为外网网卡

sudoiptables-tnat-APREROUTING-ieth0-s10.0.0.0/8-jDROP

sudoiptables-tnat-APREROUTING-ieth0-s172.16.0.0/12-jDROP

sudoiptables-tnat-APREROUTING-ieth0-s192.168.0.0/16-jDROP

查看nat规则

sudoiptables-tnat-L

查看filter规则

sudoiptables-L-n

取消nat规则

sudoiptables-tnat-F

取消filter规则

sudoiptables-F

阻止一个IP连接本机

#规则位于最后

sudoiptables-tfilter-AINPUT-s192.168.1.125-ieth0-jDROP

关闭1234端口

sudoiptables-AOUTPUT-ptcp--dport1234-jDROP

开启80端口

sudoiptables-AINPUT-ptcp--dport80-jACCEPT

限制访问80端口的外部IP最大只有50个并发

sudoiptables-AINPUT-ptcp--dport80-mconnlimit--connlimit-above50--connlimit-mask32-jDROP

禁止一个IP或者一个IP段访问服务器端口服务

#80端口,规则插入到前面

sudoiptables-tfilter-IINPUT-s192.168.2.0/24-ptcp--dporthttp-jDROP

#21端口,规则插入到前面

sudoiptables-tfilter-IINPUT-s192.168.1.23-ptcp--dportftp-jDROP

安全

检查本地是否存在安全隐患

sudoapt-getinstallrkhunter

sudorkhunter--checkall

如何安装杀毒软件

sudoapt-getinstallclamav

clamscan-r~/

Linux下可以使用的商业杀毒软件

卡巴斯基(deb):http://www.kaspersky.com/productupdates?chapter=146274389

avast!(免费/deb):http://www.avast.com/eng/download-avast-for-linux-edition.html

小红伞(gz):http://www.avira.com/en/downloads/avira_antivir_professional.html

BitDefender(比特梵德/run):http://download.bitdefender.com/SMB/Workstation_Security_and_Management/BitDefender_Antivirus_Scanner_for_Unices/Unix/Current/EN_FR_BR_RO/Linux/

申请比特梵德的KEY:http://www.bitdefender.com/site/Products/ScannerLicense/

防止服务器被暴力破解ssh密码

sudoapt-getinstalldenyhosts

服务

添加一个服务

sudoupdate-rc.d服务名defaults99

删除一个服务

sudoupdate-rc.d服务名remove

临时重启一个服务

/etc/init.d/服务名restart

临时关闭一个服务

/etc/init.d/服务名stop

临时启动一个服务

/etc/init.d/服务名start

用户管理

增加用户

sudoadduser用户名

删除用户

sudodeluser用户名

修改当前用户的密码

passwd

修改用户密码

sudopasswd用户名

修改用户资料

sudochfnuserid

如何禁用/启用某个帐户

sudousermod-L用户名#锁定用户

sudousermod-U用户名#解锁



sudopasswd-l用户名#锁定用户

sudopasswd-u用户名#解锁

增加用户到admin组,让其有sudo权限

sudousermod-Gadmin-a用户名

如何切换到其他帐号(需要该用户的密码)

su用户名

如何切换到root帐号

sudo-s

sudo-i

sudosu

设置

配置默认Java环境

sudoupdate-alternatives--configjava

设置系统http代理

exporthttp_proxy=http://xx.xx.xx.xx:xxx

设置系统https代理

exporthttps_proxy=http://xx.xx.xx.xx:xxx

修改系统登录信息

sudovim/etc/motd

使用eclipse等其他自带java编译器的软件,换回sun的编译器方法

对于JavaJDK6(就是1.6,sun缩短Java的版本名字了):

sudoupdate-java-alternatives-sjava-6-sun

对于JavaJDK1.5

sudoupdate-java-alternatives-sjava-1.5.0-sun

中文

切换输入法引擎

im-switch-c

察看文件编码

enca文件名

file文件名

转换文件名由GBK为UTF8

sudoapt-getinstallconvmv

convmv-r-fcp936-tutf8--notest--nosmart

批量转换src目录下的所有文件内容由GBK到UTF8

findsrc-typed-execmkdir-putf8/{}\;

findsrc-typef-execiconv-fGBK-tUTF-8{}-outf8/{}\;

mvutf8/src

rm-frutf8

转换文件内容由GBK到UTF8

iconv-fgbk-tutf8$i>newfile

批量转换文件内容由GBK到UTF8

foriin`find.`;doif[-f"$i"];theniconv-fgb2312-tutf8$i>"./converted/$i"fi;done

转换mp3标签编码

sudoapt-getinstallpython-mutagen

find.-iname''.mp3''-execdirmid3iconv-eGBK{}\;

或者使用图形界面工具“小K”,具体请参考解决文件名mp3标签和文本文件内容的乱码问题

控制台下显示中文

sudoapt-getinstallzhcon

使用时,输入zhcon即可



更具体的输入:zhcon--utf8--drv=vga

如果在/etc/zhcon.conf中指定了分辨率,可以去掉--drv=vga以指定的分辨率启动。

zhcon是个外挂的控制平台,也就是像US-DOS那样是额外安装的软件,装完后是需要驱动才能进去的,不然有可能死机;当然驱动什么的在你sudoapt-getinstallzhcon的时候就已经安装了;你所需要的是在进zhcon时要申明你所用的驱动,而zhcon在安装时,就装了3种驱动:vga,framebuffer,libggi,而我们一般都是用的第一种驱动,因为比较方便简单,而那2钟驱动.很麻烦,我也就没改过.好了说了这么多该告诉各位怎么进入zhcon了;运行时需输入:zhcon--utf8--drv=vga

lftp登录远程Windows中文FTP

lftp:~>setftp:charsetGBK

lftp:~>setfile:charsetUTF-8

java6的安装和中文设置

#下面是ubuntu安装标准的sun-java,安装过程中需要使用tab键切换同意其授权协议

sudoadd-apt-repository"debhttp://archive.canonical.com/`lsb_release-c|awk''{print$2}''`partner"

sudoapt-getupdate

sudoapt-getinstallsun-java6-jdksun-java6-pluginttf-wqy-microhei

sudoapt-getremovettf-kochi-gothicttf-kochi-minchottf-unfontsttf-unfonts-core

sudomkdir-p/usr/lib/jvm/java-6-sun/jre/lib/fonts/fallback

sudoln-s/usr/share/fonts/truetype/arphic/wqy-microhei.ttc/usr/lib/jvm/java-6-sun/jre/lib/fonts/fallback

openjdk6的安装和中文设置

sudoapt-getinstallopenjdk-6-jdkttf-wqy-microhei

#有两种解决办法,第一种关闭Java的AA

echo"export_JAVA_OPTIONS=''-Dawt.useSystemAAFontSettings=on''">>~/.profile

#第二种直接修改Java字体配置

echo"allfonts.umingcn=WenQuanYiMicroheiHei"|sudotee-a/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

echo"allfonts.uminghk=WenQuanYiMicroheiHei"|sudotee-a/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

echo"allfonts.umingtw=WenQuanYiMicroheiHei"|sudotee-a/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

echo"allfonts.wqy-zenhei=WenQuanYiMicroheiHei"|sudotee-a/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

echo"allfonts.shanheisun=WenQuanYiMicroheiHei"|sudotee-a/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

echo"filename.WenQuanYi_Microhei_Hei=/usr/share/fonts/truetype/wqy/wqy-microhei.ttc"|sudotee-a/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

程序显示有些字大,有些小

sudoapt-getremovettf-kochi-gothicttf-kochi-minchottf-unfontsttf-unfonts-core

PDF文件乱码

sudoapt-getinstallxpdf-chinese-simplifiedxpdf-chinese-traditionalpoppler-data

Flash中文乱码

sudogedit/etc/fonts/conf.d/49-sansserif.conf

将倒数第四行sans-serif

改为sans

保存即可,重启firefox

增加农历

sudoapt-getinstalllunar-applet

鼠标点击面板右键->添加到面板->农历日期

unzip中文文件名乱码

sudoapt-getinstallp7zip-full

exportLANG=zh_CN.GBK#临时在控制台修改环境为zh_CN.GBK,然后解压缩即可

7zaedocs.zip

ibus跟随

安装ibus-gtk即可,最好另外安装:ibus-qt4

文件管理

一屏查看文件内容

cat文件名

不显示以#开头的行

cat/etc/vsftpd.conf|grep-v^#

分页查看文件内容

more文件名

可控分页查看文件内容

less文件名

带行号显示文件的内容

nl文件名

cat-n文件名

去除文件中的行号

cut-c5-a.py

删除文件中的重复行

catfile.txt|sort-u

根据字符串匹配来查看文件部分内容

grep字符串文件名

显示包含或者不包含字符串的文件名

grep-l-r字符串路径#显示内容包含字符串的文件名

grep-L-r字符串路径#显示内容不包含字符串的文件名

find.-path''./cache''-prune-o-name".php"-execgrep-l"date_cache[$format][''lang'']"{}\;#显示当前目录下不包含cache目录的所有含有“date_cache[$format][''lang'']”字符串的php文件。

find.-typef-name\.php-execgrep-l"info"{}\;

快速查找某个文件

whereisfilename

find目录-name文件名

locate文件名#注意,为了得到更好的效果,运行前可以更新下数据库,运行sudoupdatedb即可,但这个命令每隔一段时间会自动运行,所以不用太在意

创建两个空文件

touchfile1file2

递归式创建一些嵌套目录

mkdir-pv/tmp/xxs/dsd/efd

递归式删除嵌套目录

rm-fr/tmp/xxs

回当前用户的宿主目录

cd~

#或者更简单的

cd

回到上一次的目录

cd-

查看当前所在目录的绝对路经

pwd

获得文件的后缀名

echoxxx.xxx.rmvb|sed''s/.\..?$/\1/''

去除文件的后缀名

echoxxx.xxx.rmvb|sed''s/.?\..$/\1/''

列出当前目录下的所有文件,包括以.开头的隐含文件

ls-a

移动路径下的文件并改名

mv路径/文件/新路径/新文件名

复制文件或者目录

cp-av原文件或原目录新文件或新目录

查看文件类型

filefilename

查看文件的时间

statfilename

对比两个文件之间的差异

difffile1file2

显示xxx文件倒数6行的内容

tail-6xxx

让tail不停地读取最新的内容

tail-10f/var/log/apache2/access.log

或者

tailf/var/log/apache2/access.log

查看文件中间的第五行(含)到第10行(含)的内容

sed-n''5,10p''/var/log/apache2/access.log



查找关于xxx的命令

aproposxxx

man-kxxx

通过ssh传输文件

scp-rp/path/filenameusername@remoteIP:/path#将本地文件拷贝到服务器上

scp-rpusername@remoteIP:/path/filename/path#将远程文件从服务器下载到本地

tarcvzf-/path/|sshusername@remoteip"cd/some/path/;cat->path.tar.gz"#压缩传输

tarcvzf-/path/|sshusername@remoteip"cd/some/path/;tarxvzf-"#压缩传输一个目录并解压

把所有文件的後辍由rm改为rmvb

rename''s/.rm$/.rmvb/''

把所有文件名中的大写改为小写

rename''tr/A-Z/a-z/''

删除特殊文件名的文件,如文件名:--help.txt

rm----help.txt或者rm./--help.txt

查看当前目录的子目录

ls-d/或echo/

将当前目录下最近30天访问过的文件移动到上级back目录

find.-typef-atime-30-execmv{}../back\;

查找当前目录下最近30天访问过的文件打包备份

find.-typef-atime-30|xargstarzcvpfbackup.tar.gz

find.-typef-atime-30-print-exectarrvpfbackup.tar{}\;

显示系统服务器一小时以内的包含xxxx的所有邮件

find/home/-path"Maildir"-typef-mmin-60|xargs-igrep-lxxxx''{}''

将当前目录下最近2小时到8小时之内的文件显示出来

find.-mmin+120-mmin-480-execmore{}\;

删除修改时间在30天之前的所有文件

find.-typef-mtime+30-mtime-3600-execrm{}\;

删除访问时间在30天之前的所有文件

find.-typef-atime+30-atime-3600-execrm{}\;

查找guest用户的以avi或者rm结尾的文件并删除掉

find.-name''.avi''-o-name''.rm''-user''guest''-execrm{}\;

查找不以java和xml结尾,并7天没有使用的文件删除掉

find.!-name.java!-name‘.xml’-atime+7-execrm{}\;

查找目录下所有有包含abcd文字的文本文件,并替换为xyz

grep-rIl"abcd"./--color=never|xargssed-i"s/abcd/xyz/g"#注意grep的一个参数是大写的i,一个参数是小写的L

删除当前目录里面所有的.svn目录

find.-name.svn-typed-execrm-fr{}\;

删除当前目录所有以“~”结尾的临时文件

find.-name"~"-execrm{}\;

统计当前文件个数

ls/usr/bin|wc-w

统计当前目录下所有jpg文件的尺寸

find.-name.jpg-execwc-c{}\;|awk''{print$1}''|awk''{a+=$1}END{printa}''

统计当前目录个数

ls-l/usr/bin|grep^d|wc-l

统计当前目录下占空间最大的前10名文件或目录

du-sm|sort-nr|head-10

显示当前目录下2006-01-01的文件名

ls-l|grep2006-01-01|awk''{print$8}''

备份当前系统到另外一个硬盘

sudorsync-Pa//media/disk1--exclude=/media/--exclude=/home/--exclude=/sys/--exclude=/tmp/--exclude=/proc/--exclude=/mnt/

使用ssh方式同步远程数据到本地目录

rsync-Pa-I--size-only--delete--timeout=300Remote_IP:/home/ubuntu/back/backup

使用ftp方式同步远程数据到本地目录

lftp-c"openRemote_IP;userUserNamePassword;setcache:enablefalse;setftp:passive-modefalse;setnet:timeout15;mirror-e-c/back/backup;"

去掉文件中的^M

#注意不要使用同样的文件名,会清空掉原文件

catfilename|tr-d"^M">newfile;

或者

sed-e"s/^M//g"filename>newfile;

或者

ex"+:%s/[Ctrl+V][Enter]//g""+:wq"filename#直接修改文件

转换Dos文本文件到Unix文本文件

tr-d''\15\32''unixfile.txt#dos=>unix

awk''{sub("\r$","");print}''dosfile.txt>unixfile.txt#dos=>unix

awk''sub("$","\r")''unixfile.txt>dosfile.txt#unix=>dos

转换bin/cue到iso文件

#sudoapt-getinstallbchunk

bchunkimage.binimage.cueimage

转换目录到iso文件

mkisofs-oisofile.isodirname

转换CD到iso文件

ddif=/dev/cdromof=isofile.iso

将一个文件作为附件发到邮箱

#sudoapt-getinstallmailutilssharutils

uuencodexxx.tar.gzxxx.tar.gz|mailxxx@xxx.com

(echo"hello,pleaseseeattachedfile";uuencodexxx.tar.gzxxx.tar.gz)|mailxxx@xxx.com

合并多个pdf文件到一个pdf文件

#apt-getinstallgspdftk

gs-dNOPAUSE-sDEVICE=pdfwrite-sOUTPUTFILE=output.pdf-dBATCHinput1.pdfinput2.pdf

比较两个目录里面的文件是否有相同

diff-rdir1dir2

影像

播放swf文件

安装swf解码器

sudoapt-getinstallswfmill

如何保存串流视频(mms/rtsp)

mplayer-dumpfiledump.rm-dumpstreamrstp://....

批量将rmvb转为avi

#ipodtouch可用

foriin.rmvb;domencoder-vfharddup-oacmp3lame-lameoptsvbr=3-ovcxvid-xvidencoptsfixed_quant=4-ofavi$i-o`echo$i|sed-e''s/rmvb$/avi/''`;done

批量将DVD转为avi

foriin.VOB;domencoder-oacmp3lame-lameoptsaq=7:vbr=2:q=6-srate44100-ovcxvid-xvidencoptsfixed_quant=4-ofavi$i-o`echo$i|sed-e''s/VOB$/avi/''`;done

批量将任何格式的电影转为ogv

#sudoapt-getinstallffmpeg2theora

#firefox3.5或chrome直接支持播放,无需安装任何解码器,注意不支持rmvb,rmvb会出现a/v不同步问题

foriin;doffmpeg2theora--optimize--deinterlace$i;done

批量将rmvb格式的电影转为ogv

#!/bin/bash

foriin;do

mkfifo"/tmp/$i"

mencoder-quiet-vfharddup-ovcraw-oacpcm-o"/tmp/$i""$i"&

ffmpeg2theora--optimize--deinterlace"/tmp/$i"-o"`echo$i|sed''s/.?\..$/\1/''`.ogv"

rm"/tmp/$i"

done

利用gst来转换任意电影为ogv

#!/bin/bash

foriin;do

gst-launch-0.10filesrclocation="$i"!decodebinname=demux\

{oggmuxname=mux!filesinklocation="`echo$i|sed''s/.?\..$/\1/''`.ogv"}\

{demux.!queue!audioconvert!vorbisenc!queue!mux.}\

{demux.!queue!ffmpegcolorspace!videorate!theoraenc!mux.}

done



批量转换任意文件为ipodtouch使用的mp4

#!/bin/bash

#ubuntu10.04自带的mencoder由于版权问题,不支持h264编码,需要重新编译;也可以直接参考下面的压缩方法。

#sudoapt-getinstallmencodermplayer

find.-name''.avi''-o-name''.rm''-o-name''.rmvb''-o-name''.wmv''-o\

-name''.vob''-o-name''.asf''-o-name''.mpg''-o-name''.ts''-o\

-name''.flv''-o-name''.mpeg''-o-name''.ogv''-o-name''.mov''-o\

-name''.mkv''-o-name''.dat''|whilereadi;do

basename=`echo$i|sed''s/.?\..$/\1/''`

font="WenQuanYiZenHei"



if[-f"${basename}.srt"];then

cp"${basename}.srt"$$.srt

m0="-vfscale=480:-10,harddup-sub$$.srt-unicode-subcpGB18030-subfont-text-scale3";

else

m0="-vfscale=480:-10,harddup";

fi



x0="-lavfoptsformat=mp4-faacoptsmpeg=4:object=2:raw:br=160-oacfaac-ovcx264-sws9-x264encoptsnocabac:level_idc=30:bframes=0:global_header:threads=auto:subq=5:frameref=6:partitions=all:trellis=1:chroma_me:me=umh:bitrate=500-oflavf-ofps24000/1001";

mencoder$m0-fontconfig-font"${font}"$x0-o"$$.mp4""$i"

mv"$$.mp4""${basename}.mp4"

if[-f"${basename}.mp4"];then

rm"$i"

fi

done

转换任意格式的视频到H264

#!/bin/bash

#sudoapt-getinstallfaacx264gpacmplayermencoder

basename=`echo$1|sed''s/.?\..$/\1/''`

#获得视频的长宽和帧数

mplayer-vonull-aonull-identify-frames0"$1"2>/dev/null>video.info

FPS=`catvideo.info|grepID_VIDEO_FPS|cut-d=-f2`

#FPS=23.976

W=`catvideo.info|grepID_VIDEO_WIDTH|cut-d=-f2`

H=`catvideo.info|grepID_VIDEO_HEIGHT|cut-d=-f2`

WIDTH=480

HEIGHT=`expr$WIDTH\$H\/$W`

echo$1FPS=$FPSWIDTH=$WIDTHHEIGHT=$HEIGHT

mkfifoaudio.wavvideo.yuv

faac-oaudio.aacaudio.wav&

mplayer-aopcm:file=audio.wav:fast-vcnull-vonull"$1"

x264--profilebaseline--fps$FPS-ovideo.264video.yuv${WIDTH}x${HEIGHT}&

mencoder-vfscale=$WIDTH:$HEIGHT,harddup,pp=fd,format=i420-nosound-ovcraw-ofrawvideo-ofps$FPS-ovideo.yuv"$1"

MP4Box-new-addvideo.264-addaudio.aac-fps$FPS"$basename.mp4"

rmvideo.infoaudio.aacvideo.264audio.wavvideo.yuv

#使用方法将上面的脚本保存为x264.sh,x264.shxxx.avi来进行转化。

压制DVD到H264,支持ipod

#sudoapt-getinstallfaacx264gpacmplayer

FPS=29.970

mkfifoaudio.wav

catVTS_01_1.VOBVTS_02_1.VOBVTS_02_2.VOBVTS_03_1.VOBVTS_04_1.VOB|mplayer-nocorrect-pts-vonull-vcnull-aopcm:file=audio.wav:fast-&

faacaudio.wav-oaudio.aac

mkfifovideo.y4m

catVTS_01_1.VOBVTS_02_1.VOBVTS_02_2.VOBVTS_03_1.VOBVTS_04_1.VOB|mplayer-voyuv4mpeg:file=video.y4m-vfscale=480:-3,harddup,pp=fd-nosound-&

x264--profilebaseline--muxermp4--demuxery4mvideo.y4m-ovideo.mp4

MP4Box-addvideo.mp4-addaudio.aac-fps$FPSvideo.mp4

图形界面为ipodtouch转mp4的方法

先确保有zenity和memcoder

wgethttp://www.sm136.com.cn/~lily/toIpod-O~/.gnome2/nautilus-scripts/toIpod&&chmod+x~/.gnome2/nautilus-scripts/toIpod

在nautilus里对视频文件点右键,选择"脚本"-"toIpod".

详情请查看出处。

mencoder/mplayer反拉丝参数

-vflavcdeint

合并多个rm文件为一个avi文件

mencoder-ovclavc1.rm-oacmp3lame-o1.avi

mencoder-ovclavc2.rm-oacmp3lame-o2.avi

mencoder-idx1.avi-ovccopy-oaccopy-oo1.avi

mencoder-idx2.avi-ovccopy-oaccopy-oo2.avi

cato1.avio2.avi|mencoder-noidx-ovccopy-oaccopy-ooutput.avi-

合并视频到一个文件

mencoder-ovccopy-oaccopy-idx-o目标文件名文件名1文件名2

CD抓轨为mp3(有损)

#sudoapt-getinstallabcde

abcde-omp3-b

CD抓轨为Flac(无损)

#sudoapt-getinstallabcde

abcde-oflac-b

ape转换为flac

#sudoapt-getinstallflacshntooliconvmac

iconv-fGB2312-tUTF-8example.cue-oexample_UTF-8.cue

shntoolsplit-t"%n.%p-%t"-fexample_UTF-8.cue-oflacexample.ape-dflacOutputDir

ape/flac转换为mp3

#sudoapt-getinstallflacshntoollame

#ape需要安装monkeys包

iconv-fGB2312-tUTF-8example.cue-oexample_UTF-8.cue

shntoolsplit-t"%n.%p-%t"-fexample_UTF-8.cue-o''custext=mp3lame--r3mix-b320--quiet-%f''example.ape-dmp3OutputDir

批量将ape转为mp3

forfin.ape;dogst-launch-0.10filesrclocation="$f"!decodebin!audioconvert!lamevbr=0bitrate=320!id3mux!filesinklocation="${f%.ape}.mp3";done

#需要安装shntool

foriin.ape;doshnconv-iape-o"custext=mp3lame-b320-%f""$i"-dmp3OutputDir;done

批量将ape转为m4a

forfin.ape;doffmpeg-i"$f"-acodecalac"${f%.ape}.m4a";done

批量将ape转为aac

forfin.ape;doffmpeg-i"$f"-acodecaac-strictexperimental-ab256k"${f%.ape}.aac";done

批量将flac转为mp3

foriin.flac;doshnconv-iflac-o"custext=mp3lame-b320-%f""$i"-dmp3OutputDir;done

批量将svg转为png

foriin.svg;doinkscape$i--export-png=`echo$i|sed-e''s/svg$/png/''`;done

批量转换格式到mp3

#sudoapt-getinstalllamemplayer

foriin;dobase=${i%.};mplayer-quiet-vonull-vcdummy-afvolume=0,resample=44100:0:1-aopcm:waveheader:file="$i.wav""$i";lame-V0-h-b192-vbr-new"$i.wav""$base.mp3";rm-f"$i.wav";done

批量缩小图片到30%

foriin.jpg;doconvert-resize30%x30%"$i""sm-$i";done

批量转换jpg到png

foriin.jpg;doconvert$i`echo$i|sed-e''s/jpg$/png/''`;done

将文字转为图片

convert-size200x30xc:transparent-font/usr/share/fonts/truetype/wqy/wqy-microhei.ttc-fillred-pointsize16-draw"text5,15''测试中文转为图片''"test.png

如何压缩png图片

#sudoapt-getinstalloptipng

optipng-o7old.pngnew.png

#或sudoapt-getinstallpngcrush

#pngcrush-bruteold.pngnew.png

将多张图片合并到一个PDF文件

convert.jpgout.pdf

批量把pdf转换为txt并格式化

sudoapt-getinstallpoppler-utilspoppler-data

find./-name''.txt''|whilereadi;docat$i|awk''{if($0~"^space:”){printf“\n”$0}else{printf$0}}’|sed‘/^space:digit:$/d’|sed’s/^space:\+//’|sed’s/"/”/g’>“../txt/$i”;done

转换pdf到png

#sudoapt-getinstallimagemagick

convert-density196FILENAME.pdfFILENAME.png

获取jpg的扩展信息(Exif)

identify-verbosexxx.jpg

获取视频文件xxx.avi的信息

mplayer-vonull-aonull-frames0-identify"xxx.avi"2>/dev/null|sed-ne''/^ID_/{s/[]()|&;<>`''"''"''\\!$"[]/\\&/g;p}''

查看MKV视频文件xxx.mkv的信息

#sudoapt-getinstallmkvtoolnix

mkvinfo-vxxx.mkv



抓取桌面操作的视频

ffmpeg-fx11grab-swxga-r25-i:0.0-sameq/tmp/out.mpg

命令行读出文本

espeak-vzh"从前有座山"

命令行抓屏

scrot-sscreenshot.png

压缩

增加7Z压缩软件

#支持7Z,ZIP,Zip64,CAB,RAR,ARJ,GZIP,BZIP2,TAR,CPIO,RPM,ISO,DEB压缩文件格式

sudoapt-getinstallp7zipp7zip-fullp7zip-rar

#将所有已txt结尾的文件都加入到files.7z

7za-t7zfiles.7z.txt

#解压缩files.zip

7zxfiles.zip

#删除files.zip中所有已bak结尾的文件

7zd-rfiles.zip.bak

#列出file.7z中所有的文件信息

7zlfiles.7z

#测试files.zip中所有doc结尾文件的正确性

7zt-rfiles.zip.doc

#更新files.zip中的所有doc结尾的文件(不是所有的压缩格式都支持更新这一选项)

7zufiles.zip.doc

增加rar软件压缩和解压缩支持

sudoapt-getinstallrarunrar

增加zip格式压缩和解压缩支持

sudoapt-getinstallzipunzip

解压缩xxx.tar.gz

tar-zxvfxxx.tar.gz

解压缩xxx.tar.bz2

tar-jxvfxxx.tar.bz2

压缩aaabbb目录为xxx.tar.gz

tar-zcvfxxx.tar.gzaaabbb

压缩aaabbb目录为xxx.tar.bz2

tar-jcvfxxx.tar.bz2aaabbb

增加lha支持

sudoapt-getinstalllha

增加解cab文件支持

sudoapt-getinstallcabextract

Nautilus

显示隐藏文件

Ctrl+h

显示地址栏

Ctrl+l

特殊URI地址

computer:///-全部挂载的设备和网络

network:///-浏览可用的网络

burn:///-一个刻录CDs/DVDs的数据虚拟目录

smb:///-可用的windows/samba网络资源

x-nautilus-desktop:///-桌面项目和图标

file:///-本地文件

trash:///-本地回收站目录

ftp://-FTP文件夹

ssh://-SSH文件夹

fonts:///-字体文件夹,可将字体文件拖到此处以完成安装

themes:///-系统主题文件夹

查看已安装字体

fc-list|grep文

获取安装的中文字体信息

文件管理器(比如nautilus)的地址栏里输入~/.fonts,就可以查看当前用户拥有的fonts——而系统通用字体位于/usr/share/fonts

日期和时间

显示日历

cal#显示当月日历

cal22007#显示2007年2月的日历

设置日期

date-smm/dd/yy

设置时间

date-sHH:MM

将时间写入CMOS

hwclock--systohc

查看CMOS时间

hwclock--show

读取CMOS时间

hwclock--hctosys

从服务器上同步时间

sudontpdatentp.ubuntu.com

sudontpdatetime.nist.gov

设置电脑的时区为上海

sudocp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime

XP和Ubuntu相差了8小时的时差

#关闭UTC,将当前时间写入CMOS。

sudosed-ie''s/UTC=yes/UTC=no/g''/etc/default/rcS

sudohwclock--systohc

工作区

不同工作区间切换

Ctrl+ALT+←

Ctrl+ALT+→

或者,将滚轮鼠标放在工作区图标上滚动

控制台

指定控制台切换

Ctrl+ALT+Fn(n:1~7)

控制台下滚屏

SHIFT+pageUp/pageDown

控制台抓图

setterm-dumpn(n:1~7)

只是支持tty1-7。没中文。没颜色代码序列。

数据库

mysql的数据库存放路径

/var/lib/mysql

从mysql中导出和导入数据

mysqldump数据库名>文件名#导出数据库

mysqladmincreate数据库名#建立数据库

mysql数据库名<文件名#导入数据库

忘了mysql的root口令怎么办

sudo/etc/init.d/mysqlstop

sudomysqld_safe--skip-grant-tables&

sudomysqladmin-uuserpassword''newpassword

sudomysqladminflush-privileges

修改mysql的root口令

sudomysqladmin-uroot-ppassword''你的新密码''



如何优化mysql

wgethttp://www.day32.com/MySQL/tuning-primer.sh

chmod+xtuning-primer.sh

./tuning-primer.sh

mysql命令行中文显示?号

mysql>setnamesutf8;

常用mysql管理语句

showtablestatus;#查询表状态

showfullprocesslist;#查询mysql进程

altertablesite_statsengine=MyISAM;#转换表为MyISAM类型,转表锁为行锁。

showvariables;#查看mysql变量

mysql的自动备份

#备份forummyweb数据库到/backup/mysql目录,并删除7天之前的备份记录

mysqldump--opt--skip-lock-tables-urootforum|gzip-9>/backup/mysql/forum.`date+%Y%m%d`.sql.gz

mysqldump--opt--skip-lock-tables-urootmyweb|gzip-9>/backup/mysql/myweb.`date+%Y%m%d`.sql.gz

find/backup/mysql/-typef-ctime+7-execrm{}\;

控制

如何使用命令关闭显示器

xsetdpmsforceoff

设置CPU的频率

sudoapt-getinstallcpufrequtils

#查看cpu当前频率信息

sudocpufreq-info

设置模式,对应于{最省电(最低频率),用户控制,最高或最低,正常,最大性能}

cpufreq-set-g{powersave,userspace,ondemand,conservative,performance}

命令关机

sudohalt

sudoshutdown-hnow#现在关机

定时关机

sudoshutdown-h23:00#晚上11点自动关机

sudoshutdown-h+60#60分钟后关机

命令重启电脑

sudoreboot

sudoshutdown-rnow

如何修改ssh登录提示

sudogedit/etc/motd

如何关闭ssh登录提示

sudogedit/etc/ssh/sshd_config修改这一行为:PrintLastLogno

如何使用命令关闭笔记本的触摸板

synclienttouchpadoff=1

那么开启触摸板就是:

synclienttouchpadoff=0

从命令行通知桌面消息

#sudoapt-getinstalllibnotify-bin

notify-send"helloworld"

统计

统计最常用的10条命令

history|awk''{CMD[$2]++;count++;}END{for(ainCMD)printCMD[a]""CMD[a]/count100"%"a;}''|grep-v"./"|column-c3-s""-t|sort-nr|nl|head-n10

统计每个单词的出现频率,并排序

awk''{arr[$1]+=1}END{for(iinarr){printarr[i]"\t"i}}''FILE_NAME|sort-rn

统计80端口的连接个数并按照从大到小排列

netstat-na|grep:80|awk''{print$5}''|awk-F:''{print$1}''|sort|uniq-c|sort-r-n

编辑器

vim中删除技巧

:%s/[Ctrl-v][Enter]//g删除DOS方式的回车^M

:%s=$==删除行尾空白

:%!sort-u删除重复行

:%s/^.{-}pdf/new.pdf/只是删除第一个pdf

:%s///删除多行注释

:g/^$/d删除所有空行

:g!/^dd/d删除不含字符串''dd''的行

:v/^dd/d删除不含字符串''dd''的行

:g/str1/,/str2/d删除所有第一个含str1到第一个含str2之间的行

:v/./.,/./-1join压缩空行

:g/^$/,/./-j压缩空行

ndw或ndW删除光标处开始及其后的n-1个字符。

d0删至行首。

d$删至行尾。

ndd删除当前行及其后n-1行。

x或X删除一个字符。

Ctrl+u删除输入方式下所输入的文本。

D删除到行尾

x,y删除与复制包含高亮区

dl删除当前字符(与x命令功能相同)

d0删除到某一行的开始位置

d^删除到某一行的第一个字符位置(不包括空格或TAB字符)

dw删除到某个单词的结尾位置

d3w删除到第三个单词的结尾位置

db删除到某个单词的开始位置

dW删除到某个以空格作为分隔符的单词的结尾位置

dB删除到某个以空格作为分隔符的单词的开始位置

d7B删除到前面7个以空格作为分隔符的单词的开始位置

d)删除到某个语句的结尾位置

d4)删除到第四个语句的结尾位置

d(删除到某个语句的开始位置

d)删除到某个段落的结尾位置

d{删除到某个段落的开始位置

d7{删除到当前段落起始位置之前的第7个段落位置

dd删除当前行

d/text删除从文本中出现“text”中所指定字样的位置,一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容

dfc删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容

dtc删除当前行直到下一个字符“c”所出现位置之间的内容

D删除到某一行的结尾

d$删除到某一行的结尾

5dd删除从当前行所开始的5行内容

dL删除直到屏幕上最后一行的内容

dH删除直到屏幕上第一行的内容

dG删除直到工作缓存区结尾的内容

d1G删除直到工作缓存区开始的内容

如何配置Emacs

打开新立得或者命令行,查找emacs,选择你想要的版本,比如emacs22或者emacs21.

之后的配置参考Emacs常见问题及其解决方法

vim如何显示彩色字符

sudocp/usr/share/vim/vimcurrent/vimrc_example.vim/usr/share/vim/vimrc

让vim直接支持编辑.gz文件

sudoapt-getinstallvim-full

vim如何显示行号,在~/.vimrc中加入

setnumber

如果没有~/.vimrc文件,则可以在/etc/vim/vimrc中加入

setnumber

vim配色方案(~/.vimrc)

colorschemescheme

可用的scheme在/usr/share/vim/vim71/colors/

解决vim中文编码问题,在~/.vimrc中加入

let&termencoding=&encoding

setfileencodings=utf-8,gbk,ucs-bom,cp936

#再提供一个实践中觉得不错的配置:

"Encodingrelated

setencoding=UTF-8

setlangmenu=zh_CN.UTF-8

languagemessagezh_CN.UTF-8

setfileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1

setfileencoding=utf-8

gedit中文乱码的解决

gconftool-2--set/apps/gedit-2/preferences/encodings/auto_detected"[UTF-8,CURRENT,GB18030,BIG5,ISO-8859-15,UTF-16]"--typelist--list-typestring

编译和打包

安装通用编译环境

sudoapt-getinstallbuild-essential

通用的编译安装步骤

./configure&&make&&sudomakeinstall

如何编译安装软件kate

sudoapt-getinstallapt-build

sudoapt-buildinstallkate

获得源代码包

sudoapt-getsourcemysql-server

解压缩还原源代码包

dpkg-source-xmysql-dfsg-5.1_5.1.30-1.dsc

安装编译打包环境

sudoapt-getbuild-depmysql-server

重新编译并打包Debian化的源码

dpkg-buildpackage-rfakeroot

获得源码并重新打包

apt-getsourcephp5-cgi

#或手工下载源码后使用dpkg-source-xphp5_5.2.6.dfsg.1-3ubuntu4.1.dsc解开源码

sudoapt-getbuild-depphp5-cgi

cdphp5-5.2.6.dfsg.1

dpkg-buildpackage-rfakeroot-uc-b

给源代码打补丁

patch-p0
安装gtk+编译环境

sudoapt-getinstallbuild-essentiallibgtk2.0-dev

其它

把终端加到右键菜单

sudoapt-getinstallnautilus-open-terminal

如何删除Totem电影播放机的播放历史记录

rm~/.recently-used

清除桌面挂载硬盘图标

gconftool-2--set/apps/nautilus/desktop/volumes_visible0--typebool

恢复:

gconftool-2--set/apps/nautilus/desktop/volumes_visible1--typebool

如何更换gnome程序的快捷键

点击菜单,鼠标停留在某条菜单上,键盘输入任意你所需要的键,可以是组合键,会立即生效;

如果要清除该快捷键,请使用backspace

基于OpenVZ的VPS支持OpenVPN对外访问设置

iptables-tnat-APOSTROUTING-s10.8.0.0/24-ovenet0-jMASQUERADE

#或

iptables-tnat-APOSTROUTING-s10.8.0.0/24-ovenet0-jSNAT--to-sourceVPS-IP-ADDRESS

GNOME登录时自动运行程序

系统->首选项->会话->

启动程序

man如何显示彩色字符

vim~/.bashrc

#增加下面的内容:

exportLESS_TERMCAP_mb=$''\E[01;31m''

exportLESS_TERMCAP_md=$''\E[01;31m''

exportLESS_TERMCAP_me=$''\E[0m''

exportLESS_TERMCAP_se=$''\E[0m''

exportLESS_TERMCAP_so=$''\E[01;44;33m''

exportLESS_TERMCAP_ue=$''\E[0m''

exportLESS_TERMCAP_us=$''\E[01;32m''

#生效文件

#source.bashrc

如何在命令行删除在会话设置的启动程序

cd~/.config/autostart

rm需要删除启动程序

如何提高wine的反应速度

sudosed-ie''/GBK/,/^}/d''/usr/share/X11/locale/zh_CN.UTF-8/XLC_LOCALE



可能造成某些游戏帧数降低

如何命令行刻录

mkisofs-otest.iso-Jrv-Vtest_disk/home/carla/

cdrecord-scanbus

scsibus1:

1,1,0101)''HL-DT-ST''''CD-RWGCE-8481B''''1.04''RemovableCD-ROM

cdrecord-v-ejectspeed=8dev=1,1,0test.iso

http://www.ibm.com/developerworks/cn/linux/l-cdburn/index.html

延迟抓图

gnome-screenshot-d10#延迟10秒抓图

gnome-screenshot-w-d5#延迟5秒抓当前激活窗口

回收站在哪里

Ubuntu8.04Gnome2.22.2以后在$HOME/.local/share/Trash/

Ubuntu8.04之前在$HOME/.Trash/

强制清空回收站

sudorm-fr$HOME/.local/share/Trash/files/

默认打开方式的配置文件在哪里

#全局

/etc/gnome/defaults.list

#个人

~/.local/share/applications/mimeapps.list

Firefox的缓存目录在哪里

ls~/.mozilla/firefox/.default/Cache/

查看samba的用户

sudopdbedit-L

增加一个用户到samba

sudopdbedit-ausername

从samba账户中删除一个用户

sudopdbedit-xusername

显示samba账户信息

sudopdbedit-rusername

测试samba账户是否正常

smbclient-L192.168.1.1-Uusername-d3

samba的数据库存在哪里

/var/lib/samba/passdb.tdb

samba用户Windows下无法登录

在Windows的运行输入cmd,进入终端,输入netuse命令,将显示已经连接的帐号如\\192.168.1.1\username

再输入netuse\\192.168.1.1\username/delete删除现有的共享连接,再尝试进入另外一个目录就可以正常登录了。

Pidgin的聊天记录在哪里

~/.purple/logs/

安装PDF打印机

sudoapt-getinstallcups-pdf

#打印生成的pdf文件在~/PDF文件夹里面

nvidia快速重设显示设置及配置多显示器

sudodpkg-reconfigurexserver-xorg

sudonvidia-xconfig

#nvidia-settings用于设置分辨率和多显示器

sudonvidia-settings

献花(0)
+1
(本文系网络学习天...首藏)