ubuntu一些常用命令

来源:互联网 发布:java接口是什么意思 编辑:程序博客网 时间:2024/06/05 23:43

1 文件管理

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

# ls ls-lll列出当前目录下文件的详细信息

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

# cd cd ..回当前目录的上一级目录

# cd cd -回上一次所在的目录

# cd cd ~cd回当前用户的宿主目录

# cd cd~用户名 回指定用户的宿主目录



2 文件夹管理

# mkdirmkdir 目录名 创建一个目录

# mkdirmkdir –p 递归式去创建一些嵌套目录

# rmdirRmdir 空目录名 删除一个空目录



3 文件管理

# rm rm文件名 文件名 删除一个文件或多个文件

# rm rm-rf 非空目录名 递归删除一个非空目录下的一切,不让提式-f

# catcat文件名 一屏查看文件内容

# moremore文件名 分页查看文件内容

# lessless 文件名 可控分页查看文件内容

# grepgrep字符 文件名 根据字符匹配来查看文件部分内容

# mv mv路经/文件//文件移动相对路经下的文件到绝对路经下

# mv mv文件名 新名称 在当前目录下改名

# cp cp/路经/文件./移动绝对路经下的文件到当前目录下

# findfind 路经 -name “字符串”查找路经所在范围内满足字符串匹配的文件和目录

# ln ln源文件 链接名 创建当前目录源文件的硬链接

ln/home/test /usr/test1/usr下建立/home/test的硬链接

# ln Ln -sa b 创建当前目录下a的符号链接b

# touchtouch file1 file2创建两个空文件


14 磁盘管理

# df df用于报告文件系统的总容量,使用量,剩余容量。

# du du -b/home 查看目前/HOME目录的容量(k)及子目录的容量(k)

# fdiskfdisk -l 查看系统分区信息

# fdiskfdisk /dev/sdb为一块新的SCSI硬盘进行分区

#mkfs.ext3 Mkfs.ext3 /dev/sdb1

为第一块SCSI硬盘的第一主分区格式化成

ext3的文件系统

mkfs.ext2Mkfs.ext2/dev/sdb2格式化成ext2文件系统

# mountmount -t 文件系统类型 设备路经 访问路经 磁盘管理# 文件系统类型

ISO9660光驱文件系统

vfatFat文件系统(windows)

挂载光驱 #mount –t iso9660 /dev/cdrom /mnt/cdrom

挂载FAT #mount –t vfat /dev/hda5 /mnt/cdrom挂第一个ide的第五个逻辑分区

# Umount/mnt/cdrom卸载/mnt/cdrom为空

 

磁盘
–mount /dev/floppy /mnt/floppy
–umount /dev/floppy /mnt/floppy
•光盘
–mount /dev/cdrom /mnt/cdrom
–umount /dev/cdrom /mnt/cdrom
•USB
–fdisk -l /dev/sda
–mkdir /mnt/usb
–mount -t vfat /dev/sda2/mnt/usb
–ls /mnt/usb
–umount /dev/sda2

18 文件权限

# chmodchmod u+s filefile的属主加上特殊权限

chmodg+r file file的属组加上读权限

chmodo+w file file的其它用户加上写权限

chmoda-x file file的所有用户减去执行权限

chmod765 file file的属主设为完全权限,属组设成读写权,其它用户具有读和执心权限

19 文件权限

# chownchown root /home/home的属主改成root用户

# chgrpchgrp root /home/home的属组改成root



21 打印管理

#redhat-config-printer-tui进入安装打印机界面

# lp lp –dhptr file打印filehptr的打印机上

# lpq Lpq–P 打印机名 查看打印机的状态

# lprmLprm –P 打印机名 a删除打印机内的打印作业

# disableDisable –r “changing paper” HPtr禁用打印机并提示原因

# enableEnable HPtr重新启用被禁用的

27 用户管理

# useraddUseradd创建一个新的用户

# groupaddGroupadd组名 创建一个新的组

# passwdPasswd 用户名 为用户创建密码

# Passwd-d Passwd -d用户名 删除用户密码也能登陆

# Passwd-l Passwd -l用户名 锁定账号密码

# Passwd-u Passwd -u用户名 解锁账号密码

# Passwd-S Passwd -S用户名 查询账号密码

# Usermod-l Usermod -l新用户名 老用户名 为用户改名

# Usermod-L Usermod -L要锁定用户名 锁定用户登陆

# Usermod-U Usermod –U解锁用户名 解锁用户登陆

# Usermod-u Usermod –u 501用户名 改变用户UID

# UserdelUserdel–r用户名 删除用户一切

# Groupmod-n Groupmod –n新用户名 老用户名 为组改名

# Groupmod-g Groupmod –g 501组名 改变组GID

# groupdelGroupdel组名 先应删它的用户 删除组

# gpasswd-a gpasswd -a用户名 组名 增加用户到组

# Id id用户名 查用户信息



44 软件管理

# rpm -qarpm –qa | less查询已安装RPM

# rpm –qa| grep ftp查询指定RPM

# rpm -qrpm -q 已安装的RPM包查是否安装

# rpm -qtelnet-server查看telnet服务器包

# rpm -qirpm –qi软件包名称 查看软件的描述信息

# rpm -qlrpm –ql软件包名称 查询软件包的文件列表

# rpm -qfrpm –qf软件包名称 查询某个文件所属的软件包

# rpm -qprpm –qp软件包全名 查询未安装的软件包信息

# rpm -erpm –e 软件包名称 删除具体的软件包

# rpm -Urpm –Uvh软件包全名 升级软件包并显示过程

# rpm -ivhrpm –ivh软件包全名 安装软件包并显示过程

# rpm -Vrpm –V软件包名称 验证软件包的大小,类型等

# tar -c创建包 –x释放包-v显示命令过程 –z代表压缩包

# tar -cftar –cvf benet.tar /home/benet/home/benet目录打包

# tar -czftar –zcvf benet.tar.gz /mnt把目录打包并压缩

# tar –tftar –tf benet.tar看非压缩包的文件列表

# tar –tzftar –tf benet.tar.gz看压缩包的文件列表

# tar –xftar –xf benet.tar非压缩包的文件恢复

# tar–zxvf tar –zxvf benet.tar.gz压缩包的文件解压恢复

# tar-jxvf tar –jxvf benet.tar.bz2

# diffdiff file1 file2 >补丁名.patch为新旧文件生成补丁文件

# diffdiff file1 file2比较两个文件的区别

# PatchPatch file补丁名.patch打补丁

#./configure --prefix=/usr/local/编译前配置

# make 编译

# makeinstall 安装编译好的源码包

70 启动管理

# rebootInit 6 重启LINUX系统

# HaltInit 0 Shutdown –h now关闭LINUX系统

# runlevel显示系统运行级

# Init[0123456] 改变系统运行级,7

#Chkconfig –-list [服务名称]查看服务的状态

#Chkconfig –-level <运行级><服务名> on|off|set设置服务的启动状态

#Chkconfig <服务名>on|off|set设置非独立服务启状态



77 进程管理

# Top动态Ps-aux静态 进程树pstree查看系统进程

# 程序名&后台运行程序

# fg把后台运行的进程调回前台

# bg把前台运行进程调到后台

# reniceRenice +1 180180号进程的优先级加1

# killKill PID 终止某个PID进程

# at at5pm + 3 days /bin/ls指定三天后下午5:00执行/bin/ls

# crontabCrontab -eVI的形式来编辑自动周期性任务

# crontabCrontab -l查看自动周期性任务

# crontabCrontab -r删除自动周期性任务

# crondService crond马上启动自动周期性服务Servicecrond <启动|停止|重启|状态>


1. dpkg:package manager for Debian

* 安装:dpkg -i package

* 卸载:dpkg -r package

*卸载并删除配置文件: dpkg-P |--purge package

*如果安装一个包时。说依赖某些库。 可以先apt-get install somelib...

* 查看软件包安装内容:dpkg -L package

*查看文件由哪个软件包提供:dpkg -S filename

* 另外dpkg还有dselectaptitude两个frontend.

2. apt

* 安装:apt-get install packs

* apt-getupdate :更新源

* apt-getupgrade:升级系统。

* apt-getdist-upgrade:智能升级。安装新软件包,删除废弃的软件包

* apt-get-f install-f == --fix broken修复依赖

* apt-getautoremove:自动删除无用的软件

* apt-getremove packages :删除软件

* apt-getremove package --purge删除包并清除配置文件

*清除所以删除包的残余配置文件:dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [""]|sudo xargs dpkg -P

*安装软件时候包的临时存放目录:/var/cache/apt/archives

* 清除该目录:apt-get clean

*清除该目录的旧版本的软件缓存:apt-get autoclean

*查询软件some的依赖包:apt-cache depends some

*查询软件some被哪些包依赖:apt-get rdepends some

* 搜索软件:apt-cache search name|regexp

*查看软件包的作用:apt-cacheshow package

*查看一个软件的编译依赖库:apt-cache showsrc packagename|grep Build-Depends

* 下载软件的源代码: apt-get source packagename (:sources.list中应该有deb-src)

*安装软件包源码的同时,安装其编译环境:apt-getbuild-dep packagename (deb-src)

*如何将本地光盘加入安装源列表:apt-cdrom add

3. 系统命令:

* 查看内核版本:uname -a

* 查看ubuntu版本: cat /etc/issue

* 查看网卡状态: ethtool eth0

*查看内存,cpu的信息:cat /proc/meminfo ; cat /proc/cpuinfo

(/proc下面的有很多系统信息)

*打印文件系统空间使用情况:df -h

* 查看硬盘分区情况:fdisk -l

* 产看文件大小:du -h filename;

* 查看目录大小:du -hs dirname ; du -hdirname是查看目录下所有文件的大小

* 查看内存的使用:free -m|-g|-k

* 查看进程:ps -eps-aux -->显示用户

* 杀掉进程:kill pid

* 强制杀掉:killall -9 processname

4. 网络相关:

* 配置ADSL: sudo pppoeconf

* ADSL手工拨号:sudo pon dsl-provider

* 激活ADSL : sudo /etc/ppp/pppoe_on_boot

* 断开ADSL: sudo poff

*根据IP查网卡地址:arping IP地址

*产看本地网络信息(包括ip等):ifconfig | ifconfig eth0

* 查看路由信息:netstat -r

* 关闭网卡:sudo ifconfig eth0 down

* 启用网卡:sudo ifconfig eth0 up

* 添加一个服务:sudo update-rc.d服务名defaults99

* 删除一个服务:sudo update-rc.d服务名remove

* 临时重启一个服务:/etc/init.d/服务名restart

* 临时关闭一个服务:/etc/init.d/服务名stop

* 临时启动一个服务:/etc/init.d/服务名start

* 控制台下显示中文:sudo apt-get install zhcon

* 查找某个文件:whereis filenamefind 目录-name文件名

*通过ssh传输文件

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

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

5. 压缩:

*解压缩a.tar.gz: tar zxvf a.tar.gz

*解压缩a.tar.bz2: tar jxvf a.tar.bz2

*压缩aaabbb目录为xxx.tar.gz: tar zcvfxxx.tar.gz aaa bbb

*压缩aaabbb目录为xxx.tar.bz2: tar jcvfxxx.tar.bz2 aaa bbb

6.Nautilus

特殊 URI地址

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

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

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

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

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

* file:///- 本地文件

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

* ftp:// -FTP 文件夹

* ssh:// -SSH 文件夹

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

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

* 显示隐藏文件:Ctrl+h

* 显示地址栏:Ctrl+l

* 查看已安装字体:nautilus的地址栏里输入”fonts:///“,就可以查看本机所有的fonts

7.补充部分:

*查看本地所有的tpc,udp监听端口:netstat -tupln (t=tcp, u=udp, p=program, l=listen, n=numric)

*通过man搜说相关命令:man -k keyword . eg: man -k user

* 或者用apropos

*统计文件所占用的实际磁盘空间:du(du - estimate file space usage)

*统计文件中的字符,字节数:wc -c/-l/-w (wc - print the number of newlines, words, and bytes infiles)

* 查看文件的内容:od -x/-c/.... (od - dump files in octaland other formats)

我认为od最有用的就是文件的字节流了:od -t x1 filename

查看文件的 Ascii码形式: od -t c filename(其中统计信息最左边的是: 字节数)

*查找命令所在文件的位置:whichod输出: /usr/bin/od

查看该文件由哪个包提供:dpkg -S /usr/bin/od输出:coreutils: /usr/bin/od

再查看coreutils包的全部内容就知道了linux的核心命令:dpkg -L coreutils

然后 infocoreutils哈哈,认真学吧, 满世界都是命令!

* 可以用man命令产看某个命令的所有section的解释: man -a tty

然后用q,next转换到下一个section的解释

8. ulimit

ulimit:显示(或设置)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程序在运行过程中使用的系统资源不超过相应的软限制,任何的超越都导致进程的终止。

ulimited 不限制用户可以使用的资源,但本设置对可打开的最大文件数(maxopen files

和可同时运行的最大进程数(maxuser processes)无效

-a 列出所有当前资源极限

-c 设置core文件的最大值.单位:blocks

-d 设置一个进程的数据段的最大值.单位:kbytes

-f Shell创建文件的文件大小的最大值,单位:blocks

-h 指定设置某个给定资源的硬极限。如果用户拥有root用户权限,可以增大硬极限。任何用户均可减少硬极限

-l 可以锁住的物理内存的最大值

-m 可以使用的常驻内存的最大值,单位:kbytes

-n 每个进程可以同时打开的最大文件数

-p 设置管道的最大值,单位为block1block=512bytes

-s 指定堆栈的最大值:单位:kbytes

-S 指定为给定的资源设置软极限。软极限可增大到硬极限的值。如果-H-S标志均未指定,极限适用于以上二者

-t 指定每个进程所使用的秒数,单位:seconds

-u 可以运行的最大并发进程数

-v Shell可使用的最大的虚拟内存,单位:kbytes

eg: ulimit-c 1000(可以先通过ulimit -c查看原来的值)